Google 地图在派生 apk(已发布的应用程序)中不起作用

Google Maps not working in derived apk (published app)

好的,我想先说明一下,我已经尝试了多种解决方案,例如:

我已尝试获取 SHA1 指纹,并将那些 "Restrictions" 添加到 Google 开发者控制台 API 凭据。

还尝试将 API 硬编码到清单中(找不到推荐这个的 link)。

此时,我已将范围缩小到以下可能的问题:

1) 我正在使用的密钥库在检查时有以下行

签名算法名称:SHA256withRSA

我注意到许多解决方案都谈到了 SHA1withRSA。 但由于这需要创建一个新的密钥库,我必须为其创建一个全新的应用程序,因此我避免了这个结论。

2) 我还注意到上传到 Play 控制台的原始 APK 确实有效。 但是派生 APK(我假设是上传到 Play 商店的那个)不起作用。

3) Google Developer Console 中的 API 库没有特别的

"Google Maps Android API v2"

只显示"Google Maps Android API"。我想这不应该是问题所在。

澄清一下,问题是我的应用程序中的地图显示为空白。

好的,我刚刚解决了(在 post 13 分钟前完成)。

因此在实施此解决方案后

当 运行 我的 phone 中的 apk:

时,我注意到我的 Android 监视器中出现了这个错误
Android Application (<cert_fingerprint>;<package_name>): <what I assume is a SHA1 fingerprint>;<my_package_name>

所以我只是复制了 SHA1 指纹,将其添加到 API 凭据限制并保存了。几分钟后,运行 该应用程序再次运行,并且运行正常。

不需要reupload/update apk。

希望这对其他人有帮助。

为了派生apk google引入App唱歌功能。 Google 签署你的 apk agian, 所以你必须获得 App Sigining 证书的 SHA1 并将其设置到 Google 云平台(你设置包名和 SHA1 的地方)

你发现了 SHA1 密钥的不同。

此功能的主要目的是通过 google 本身提供安全性,如果您丢失了密钥存储,那么您将很好地处理这种情况。

检查这个 link:

https://support.google.com/googleplay/android-developer/answer/7384423

官方博客:

https://android-developers.googleblog.com/2017/09/enroll-for-app-signing-in-google-play.html

如果您想将应用发布到 Play 商店,我们需要从 Google Play 控制台中的应用获取 SHA-1 证书指纹。