Android集成Google Places API输入内容自动关闭报错如何解决
解决方案
1. 确认Google Cloud控制台API启用状态
首先确认控制台中同时启用了两个必需服务:
- Places API
- Maps SDK for Android
仅启用Places API会触发授权校验失败。
2. 校验API密钥配置
- 如果你设置了「Android应用」类型的限制,必须同时正确填写你App的包名、debug和release两个环境的SHA-1签名指纹,两个环境的签名不一致会导致开发阶段授权失败。
- 配置修改后需要等待3-5分钟让Google Cloud全局生效,不要修改后立刻测试。
- 你当前配置为无限制,建议先保持无限制状态直到功能跑通,再逐步添加限制,避免配置缓存导致的校验异常。
3. 校验密钥正确性
在初始化Places的位置打印PlacesAPIKey的实际值,和控制台中的密钥逐字符比对,确认没有多空格、错字符、或者误用其他项目密钥的问题。
4. 排查依赖问题
确认你使用的是官方新版Places SDK,没有使用废弃的play-services-places包,正确依赖配置参考:
implementation 'com.google.android.libraries.places:places:3.3.0'
5. 排查网络环境问题
报错中提到请求referrer为空,如果你当前使用了模拟器代理、VPN或者全局代理,先关闭代理使用直连网络测试,代理会篡改请求头导致Google的授权校验不通过。
临时调试方案
测试阶段可以先去掉setTypeFilter和setPlaceFields配置,先验证基础选择功能正常后再逐步添加参数,排除参数配置异常导致的崩溃问题。
内容的提问来源于stack exchange,提问作者Izaac Doyle
相关产品推荐
相关产品推荐

