React Native接入Google Places API无响应 控制台无请求记录
解决方案
- 先确认请求是否真的从应用侧发出:给两个
GooglePlacesAutocomplete组件添加onFail回调,打印错误信息排查本地错误,示例配置如下:
<GooglePlacesAutocomplete // 原有配置保持不变 onFail={(error) => console.log('Places API请求失败:', error)} onNotFound={() => console.log('无匹配搜索结果')} />
如果回调打印了网络相关错误,说明请求根本没有到达Google服务器,自然不会在开发者控制台生成日志。
- 检查API密钥的限制规则:登录Google Cloud控制台,查看对应API密钥的应用限制,如果你配置了Android包名、iOS Bundle ID、应用签名校验,确认当前打包运行的应用信息和配置的规则完全一致,限制不匹配的情况下请求会被Google的网关直接拦截,不会计入Places API的请求统计。
- 确认Google Cloud账号状态正常:检查账号是否欠费、计费是否被停用,服务禁用或计费异常时的请求不会展示在接口请求日志中。
- 排查运行环境网络限制:如果你使用模拟器运行,确认模拟器可正常访问Google服务,可尝试在模拟器浏览器打开Google官网验证,或者换真机加可用的网络环境测试,本地网络无法访问Google服务的情况下不会生成请求日志。
- 修正状态更新逻辑:你当前的
setFromText(data, details)写法不符合useState的使用规范,useState更新函数仅接收一个参数,第二个参数会被直接丢弃,建议修改为setFromText({data, details})避免后续逻辑出错。 - 检查组件版本兼容性:确认你安装的
react-native-google-places-autocomplete版本和之前正常运行时的版本一致,大版本升级会带来配置项变更,可尝试指定安装之前正常运行的版本号测试。
内容的提问来源于stack exchange,提问作者Misa
相关产品推荐
相关产品推荐

