我知道那里有很多相同的问题。我已经阅读过它们并尝试了答案,但我仍然没有工作。
错误讯息:
E / Google Maps Android API:无法加载地图。联系Google服务器时出错这可能是一个身份验证问题(但可能是由于网络错误)。
我正在尝试在/ extras / google / google_play_services / samples中运行Google Map Android示例代码。
我正在使用Android Studio,而我的KeyStore是由Android Studio生成的。 在我的开发人员控制台中,我启用了Google Maps Android API v2和Google Play Android Developer API。在生成api密钥的页面中,我使用了运行
后从命令行获得的SHA1keytool -list -v -keystore“THE_KEYSTORE_GENERTATED_BY_ANDROID_STUDIO”-alias“ALIAS”
对于包名,我使用了com.example.mapdemo,因为在示例代码的清单中,它说:
包= “com.example.mapdemo”
我还添加了
com.google.android.providers.gsf.permission.READ_GSERVICES android.permission.ACCESS_WIFI_STATE
清单中的。
我正在使用带有wifi的Nexus 5.
它仍然无法正常运行并出现同样的错误。
我生成的API是公共API访问。 我卸载应用程序并从Android Studio中清除它,然后每次修改清单时都运行它。
答案 0 :(得分:3)
我会尝试使用.android目录中调试密钥库中的SHA1生成新的API密钥。它被称为debug.keystore,应该位于以下目录中:
~/.android/
C:\Users\your_user_name\.android\
找到它后,您可以使用以下命令获取SHA1:
OS X和Linux:keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
Windows Vista和Windows 7:keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android
答案 1 :(得分:0)
我也面临同样的问题,谷歌地图和地方服务在 ios 以及 android .....你可以尝试旧的 api key (创建2-3个月或更长时间之前),他们的工作正常......
我确定你的问题会得到解决。
快乐编码:)
答案 2 :(得分:0)
您必须在permission
manifest
<permission
android:name="com.example.mapdemo.permission.MAPS_RECEIVE"
android:protectionLevel="signature"/>
<uses-permission android:name="com.example.mapdemo.permission.MAPS_RECEIVE"/>
并仔细检查您是否已使用计算机API-Key
在google console
中生成了正确的SHA-1;com.example.mapdemo
,并在此项目中使用该文件。
答案 3 :(得分:0)
首先,在Logcat中检查您的包名。
如果您使用 Android Studio ,请查看您的build.gradle。如果文件包含applicationIdSuffix '.dev'
。您应该将.dev
添加到您的包名。
E.I。包名是:
com.company.main
在API控制台中编写
... 9S.ME.DA.FE; com.company.main.dev