我是否需要不同的 SHA1 密钥来执行 Google 映射

Does i need different SHA1 key to perform Google Map

Hj。我正在为项目使用 google map API v2。在我的办公室,使用 cert_fingerprint 键 1

效果很好

但是在家里做的时候,我得到了一张空白的 google 地图。跟踪日志我可以看到这个:

03-17 04:40:44.288 12461-12510/com.dump.dms E/Google 地图 Android API:在 Google 开发者控制台(https://console.developers.google.com) 确保 "Google Maps Android API v2" 已启用。 确保存在以下 Android 键: API 密钥:AIzaSyDEE3COcEWPZte_cpPl*********L2Cm_A Android 应用程序 ( < cert_fingerprint > ;< package_name >): EF:FA:C1:36:BD:FA:D6:6A:DE: ** : ** : ** :53:C8:8B:16:C1:15 :C7:ED;com.dump.dms(调用cert_fingerprint键2

所以我必须替换为 cert_fingerprint 键 2 。然后我的应用程序正常工作。

谁能解释为什么我需要 2 cert_fingerprint 这样的密钥?我怎样才能只使用一个 cert_fingerprint 键?

将您的应用程序部署为调试版本时,问题是您在家里的 debug.keystore 与工作时不同。在您的办公室中,您使用 debug.keystore 生成了用于生成 Google Maps API 密钥的 SHA1 密钥。当您现在在家里部署您的应用程序时,使用了另一个 debug.keystore 并且密钥不匹配。

最简单的方法是从工作环境中复制 debug.keystore 文件并在家中使用。但是您也可以像这样在 Google API 控制台中输入多个 SHA1 密钥(对于您使用的每个环境,这意味着您需要为所有环境的 debug.keystore 文件创建 SHA1 密钥) :

AB:0A:05:...:12;com.example
CD:35:01:...:2B;com.example

部署为发布版本时会出现同样的问题(使用将 Android 应用导出为 APK 文件时需要生成的密钥库文件)

另请参阅:http://developer.android.com/tools/publishing/app-signing.html#debug-mode