2

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

4

3 回答 3

9

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

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

Google 地图要求您的 api 密钥与您签署应用程序时使用的密钥相匹配。因此,根据您的 apk 是通过调试密钥(从“bin”复制)还是生产(导出)制作的,您将需要 2 个不同的 api 密钥。

发生在您身上的是,当您导出应用程序时,密钥与 Google Maps API 认为的不匹配,因此无法正常工作。

在此处阅读有关签署应用程序的更多信息。

于 2013-06-07T07:17:30.753 回答
0

请按照以下步骤获取 Release 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 test

  4. 当你按下回车键时,它会要求输入密钥库密码。所以请输入您的密钥库密码。

  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)上。

希望它会帮助你。

对于视频请看一下

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

于 2017-02-14T07:33:32.290 回答
0

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

于 2018-09-27T17:44:52.653 回答