Android Studio:使用发布密钥库运行应用以显示GoogleMaps v2

时间:2013-08-03 22:04:35

标签: android google-maps-api-2

我的应用适用于Android Google Maps v2。

要显示地图,首先我生成了一个地图密钥,但它对我不起作用,因为其他开发人员也应该能够使用此地图,而且我也想将.apk发送给我们的客户端测试我的应用程序。

所以我决定生成一个发布地图密钥。

为此:

1)我生成了一个发布密钥库
2)获取新的SH1代码
3)使用Google Console生成新的地图密钥

现在,当我从Android Studio运行应用时,地图未加载,出现此错误:

  

Google Maps Android API:无法加载地图。联系Google时出错   服务器。这可能是一个身份验证问题(但可能是由于   网络错误)。

我做错了什么?当我从Android Studio运行我的应用程序时,是否使用了发布密钥库? 如果没有,我如何告诉Android工作室现在使用发布密钥库?

...谢谢

UPDATE 1:如果我生成一个apk文件并在设备上运行,一切都很好

3 个答案:

答案 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 ==(表示您的证书)