我的应用适用于Android Google Maps v2。
要显示地图,首先我生成了一个地图密钥,但它对我不起作用,因为其他开发人员也应该能够使用此地图,而且我也想将.apk发送给我们的客户端测试我的应用程序。
所以我决定生成一个发布地图密钥。
为此:
1)我生成了一个发布密钥库
2)获取新的SH1代码
3)使用Google Console生成新的地图密钥
现在,当我从Android Studio运行应用时,地图未加载,出现此错误:
Google Maps Android API:无法加载地图。联系Google时出错 服务器。这可能是一个身份验证问题(但可能是由于 网络错误)。
我做错了什么?当我从Android Studio运行我的应用程序时,是否使用了发布密钥库? 如果没有,我如何告诉Android工作室现在使用发布密钥库?
...谢谢
UPDATE 1:如果我生成一个apk文件并在设备上运行,一切都很好
答案 0 :(得分:0)
我相信我读到最新版本的地图现在必须与Google Play服务器联系(即:必须现在在设备上运行,而不是在模拟器中运行)。我很快就会遇到同样的问题。 https://developers.google.com/maps/documentation/android/start
我认为这就是你要问的问题,但我可能误解了这个问题?
答案 1 :(得分:0)
在API控制台中,您可以使用单个API密钥连接多个签名密钥(调试和发布)。编辑允许的应用程序并将每个SHA-1;包对放在新行上。
这样,您在AndroidManifest.xml中只有一个键,而不必更改它。
许多开发人员必须处理同一个应用程序的问题最好通过将debug.keystore从一台计算机复制到另一台计算机来解决。这不仅有助于不必在API控制台中添加每个密钥库的SHA-1,而且当它们共享设备进行测试运行时,它们不会进入证书冲突。
答案 2 :(得分:0)
对于生成谷歌地图的密钥Live和Debug在android studio的命令行中使用它。
在jdk bin上打开命令行。
用于生成调试密钥。
c:\..\jdk\bin>keytool -list -v -keystore C:\..\.android\debug.keystore -alias androiddebugkey -storepass android -keypass android
用于生成实时密钥。
c:\..\jdk\bin>keytool -list -v -keystore E:\Share\Jobalerts\your.keystore
your.keystore ==(表示您的证书)