在我的项目中PlacePicker
工作正常但今天突然在使用resultCode 2启动后立即关闭。
这是logcat输出
07-06 16:06:36.596 1023-20519/? W/Places﹕ e.a:638: gLocReplyElement
unsuccessful status: 1
07-06 16:06:36.596 1023-20519/? W/Places﹕ e.a:665: gPlaceQueryResult
unsuccessful responseCode: 26
07-06 16:06:36.596 21086-21708/? E/PlacePicker﹕
PLACES_API_QUOTA_FAILED
有什么想法吗? PLACES_API_QUOTA_FAILED
错误代码是什么意思?
答案 0 :(得分:2)
假设您启用了适用于Android的Place API并且您的清单中正确配置了您的API密钥,如果您在开发人员控制台中缺少SHA-1证书指纹,也可能会发生这种情况。因此,请确保涵盖以下内容:
在开发人员控制台中,确保为Android应用生成了API密钥,并确保在清单文件中输入了API密钥。它应该是嵌套在应用程序标记内的元标记。
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.my.awesome.app">
<application>
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="AIza..."/>
... other stuff
</application>
</manifest>
为调试模式生成keyhash:
keytool -exportcert -alias androiddebugkey -keystore C:\Users\{username}\.android\debug.keystore -list -v
相同的命令用于发布版本,但这次您需要指向自己的密钥库。
答案 1 :(得分:0)
有关错误代码的信息,请参阅here ...它现在可能会抛出更好的错误,但这通常意味着API控制台中的证书指纹出现问题。
我们遇到了类似的问题(PlacePicker
立即关闭结果代码2,除了我们没有任何相关的控制台输出)。我们最终修复了我们的问题,删除所有指纹以使其正常工作,然后慢慢添加安全性:
如果PlacePicker
现在正在运行,请尝试重新添加安全性:
https://developers.google.com/maps/documentation/android-api/signup
其他信息
我们的设备运行的是Android API级别23(Android 6.0)
我们的应用/模块级build.gradle
正在使用:
compile 'com.google.android.gms:play-services-maps:9.0.0'
compile 'com.google.android.gms:play-services-gcm:9.0.0'
compile 'com.google.android.gms:play-services-location:9.0.0'
我们的项目级别build.gradle
正在使用:
classpath 'com.google.gms:google-services:3.0.0'
```
答案 2 :(得分:-3)
适用于Android的Google Places API会强制默认限制为每24小时1 000个请求。如果您的应用超出限制,应用将开始失败。
您可以在此处找到完整的说明 https://developers.google.com/places/android/usage