Sign Android App包含Google地图

时间:2013-12-18 13:49:16

标签: android adt google-maps-api-2 android-keystore

我创建了一个小应用,其中我使用了Google Maps API v2

为了进行测试和调试,我使用了名为debug.keystore生成的默认调试密钥库。

我生成了我的SHA密钥,必须提供该密钥才能使用地图和生成的api密钥并在我的应用程序中使用。我在eclipse中使用EXPORT向导签署了应用程序,并为我的应用程序和生成应用程序apk创建了新的密钥库。

但是现在当我尝试在设备上运行此应用程序时,不会显示MAP。

我怀疑这是因为我的应用程序的新密钥库,我已将调试密钥库SHA密钥注册到谷歌控制台。

我在这里做错了什么,我该如何解决?

1 个答案:

答案 0 :(得分:4)

在使用调试版keystore对应用程序进行签名时,您应该使用当前API_KEY生成的SHA1创建另一个keystore并在{{1}中注册并将该密钥用于Google API Console。您的地图不会显示,因为当前密钥库和您的包名称会生成Google Maps。更改密钥库文件会导致API_KEY显示为空白,因为MapView不同。

作为最终答案,您应该重复所有步骤,为新SHA1生成API_KEY Google Maps

修改:您可以使用两个选项从SHA1文件创建SHA1

  1. keystore将为您提供keytool -list -v -keystore <path_to_your_keystore>
  2. 如果您尝试使用密钥库对应用进行签名,请使用SHA1,最后在保存Eclipse文件之前,它会显示您生成的.apkSHA1密钥库。我想这是你第二次尝试签名apk。