【发布时间】:2017-11-11 19:23:27
【问题描述】:
当我从 google play 下载我的应用程序时,Google 地图没有加载。 当我直接下载带有 .apk 文件的应用程序(将其传输到我的手机并下载)时,它确实加载了! 我搜索了一遍,它仍然不起作用。 这就是我所做的:
- 在 Android Studio 中,Build->Generate Sign APK 我创建了一个新的 Keystore 'keystore' 和一个新的 Key 'app'
- 运行:keytool -list -v -keystore keystore.jks -alias app。
- 在步骤 2 的输出中,在“证书指纹:”下,我获取了“SHA1”值和我的包名称“com.gilshelef.feedme”(来自 AndroidManifest.xml 文件)并在 Google 中生成了一个新的 API 密钥api 控制台。我将密钥限制为“android 应用程序”并添加了我的 SHA1 和包名称。
-
我将生成的密钥(第 3 步)放在我的清单文件中:
<meta-data android:name="com.google.android.geo.API_KEY" android:value="@string/google_maps_key" /> 在 android studio 中,Build->generate sign APK 我使用了在步骤 1 中创建的相同密钥库和相同的密钥。
我将生成的 apk 上传到 Google Play。
在我从 google play 下载我的应用程序后,地图仍然是空白的!
注意事项:
- 我还尝试将密钥库的扩展名从 .jks 更改为 .keystore,因为 android studio 使用 .jks 扩展名。
- 我验证了来自 google api 控制台的密钥与我在 AndroidManifest.xml 文件中使用的密钥相同。
- 我在 google api 控制台和 Manifest 文件中验证了包名。
- 我遵循了这个:this 教程“显示发布证书指纹”。除了“签名算法名称:SHA1withRSA”之外,输出看起来相同。我的发布密钥库中的签名算法名称是“SHA256withRSA”,这可能是问题所在?
我做错了什么??
【问题讨论】:
-
我遇到了同样的问题。解决方案在这里stackoverflow.com/questions/46191073/…
标签: android google-maps release keystore