导出apk后,Google地图不会在应用程序中显示。为什么会这样?

时间:2013-06-07 07:11:18

标签: android google-maps

我使用的是Google Maps V1 API密钥。如果我从bin文件夹中截取apk,Google地图将显示在应用程序中。但是,如果我导出项目并部署排出的apk,则谷歌地图不会显示在应用程序中。如果有人知道原因,请分享您的想法。谢谢。

3 个答案:

答案 0 :(得分:9)

在本地开发和运行应用程序时,实际上是使用调试密钥对其进行签名。

导出时,您使用其他生产密钥对其进行签名。

Google地图需要您的API密钥才能与您在应用中签名的密钥相匹配。因此,您需要2个不同的api密钥,具体取决于您的apk是通过调试密钥(从“bin”复制)还是生产(导出)。

发生了什么事情,当您导出应用时,密钥与Google Maps API认为的密钥不匹配,因此无效。

详细了解如何签署应用here

答案 1 :(得分:0)

请按照以下步骤获取发布 SHA1

  1. 找到创建签名apk时使用的.jks路径。

    例如: /Users/dharm/Documents/Android/test.jks

  2. 复制您的jks文件名并放入第3行的末尾

    例如: test.jks

  3. 打开终端并输入此命令 keytool -list -v -keystore“keystorepath”-alias“keyalias”

    例如: keytool -list -v -keystore /Users/dharm/Documents/Android/test.jks -alias 测试

  4. 当您按Enter键时,将要求输入密钥库密码。所以请输入您的密钥库密码。

  5. 如果您成功完成所有步骤,那么您将获得此证书(密钥库)的全部信息。

    <强>实施例

    MD5: D2:52:A1:7C:14:9F:D5:DD:64:35:E2:3F:74:CA:C5:E7

    SHA1: D3:32:AA:09:81:71:50:D2:47:20:43:B2:13:A2:D5:55:4B:A7:DC: 3C

    <强> SHA256: 27:8A:84:C5:C3:CE:98:47:A7:73:E2:87:91:5E:5A:A2:F4:B8:D4:D4:0E

  6. 现在您可以将此SHA1密钥放在Google控制台(SHA-1 certificate fingerprint)上。

  7. 希望它会对你有所帮助。

    对于视频请看一下

    https://www.youtube.com/watch?v=g75cZXjmuj8&feature=youtu.be

答案 2 :(得分:0)

我将钥匙直接放在清单中并开始工作。