即使在更新 SHA 1 指纹以获取发布密钥后,Google 地图也无法在 Play 商店中发布后加载

Posted

技术标签:

【中文标题】即使在更新 SHA 1 指纹以获取发布密钥后,Google 地图也无法在 Play 商店中发布后加载【英文标题】:Google Maps not loading after publishing on play store even after updating SHA 1 fingerprint for release key 【发布时间】:2017-11-18 03:35:51 【问题描述】:

这里是谷歌地图 api 和 android 应用程序开发的新手。 我正面临一些奇怪的问题,并且从两天开始就在努力解决这个问题。我开发了一个使用谷歌地图的应用程序。我已经启动了应用程序来玩商店。当我将签名的 apk 直接安装到移动设备时,谷歌地图加载得非常好,但当我通过 Play 商店安装时却没有。

我已使用发布密钥 SHA 1 指纹更新了 google maps api 控制台。我也无法在线找到任何解决方案,也没有得到谷歌支持团队的任何支持。有人请帮忙!

【问题讨论】:

可能您正在使用指纹进行调试。请检查此link 将 SHA-1 指纹从 Play 控制台中的 App Signing 证书添加到 google 开发者控制台中的凭据应该可以工作。 【参考方案1】:

如果您在开发者控制台中启用了应用签名功能,那么在文档中清楚地写明上传证书只需要谷歌进行身份验证,并且在用户手机上安装应用程序之前删除上传证书。因此,您还需要在您为 Google Maps API 启用的密钥下提供应用签名证书 SHA。 App Signing Page 就像我附上了屏幕截图一样,为您提供方便... 在图片中,我已将您需要提供的标记为附加凭据

【讨论】:

谢谢 Chandan Suri。我也想出了同样的方法,它奏效了。 欢迎您...很高兴为您提供帮助。 这个有效的答案!! 问题仍然存在 :( 在哪里使用这个 sh1 键?【参考方案2】:

关于已接受的答案:在过去,您会创建 2 个 API 密钥,一个用于调试,一个用于发布。每个人都使用了您创建的相关密钥库 SHA1。但是由于“Google Play App Signing”,您用于发布版本的 SHA1 不再有效(Google 在上传之前删除了包括您的 SHA1 在内的发布证书)。因此,简单的解决方案是返回 Play Store 控制台,从 App Signing Certificate 中复制 SHA1(而不是从底部的 Upload Certificate 中复制!)并将其放入发布的 Google Maps Android API 中,保存并刷新而不创建新的键。

【讨论】:

我找不到从应用签名证书中复制的 sha1 的位置【参考方案3】:

当您上传和发布应用程序播放控制台时,您的密钥仅用于上传目的。要签署和发布每个版本,它使用不同的密钥证书,您可以在

下找到这些证书

设置 -> 应用完整性部分

只需从那里复制 SHA-1 密钥并使用 google map api 密钥对其进行更新。之后您的地图将开始工作。

【讨论】:

【参考方案4】:

您可以将复制的 sha1 粘贴到“限制使用您的 android 应用程序”中,并重命名 Api 密钥

【讨论】:

这看起来应该是对 Brian K. 的回答的评论。【参考方案5】:

如果您没有任何限制并且收到此错误;确保您的调试/主密钥和发布密钥相同或发布密钥有效。

【讨论】:

以上是关于即使在更新 SHA 1 指纹以获取发布密钥后,Google 地图也无法在 Play 商店中发布后加载的主要内容,如果未能解决你的问题,请参考以下文章

密钥库证书的 SHA-1 指纹

密钥库证书的 SHA-1 指纹

密钥库证书的SHA-1指纹

无法获取 SHA1 证书指纹 Android Studio [重复]

Firebase API 密钥限制不适用于 Android 应用程序包名称和 SHA1 指纹

Google Play 签名 SHA256 指纹发布一次后会改变吗?