Android - 密钥工具和最终 Play 商店捆绑包之间的证书指纹不同

Android - Release certificate fingerprint different between keytool and final Play Store bundle

当我使用 Google 地图创建 Android 应用程序时,我应该使用 SHA- 限制应用程序的 google api 密钥1 个密钥库指纹。

我想在将应用程序包提交到 Play 商店之前这样做,所以我尝试使用 Google 提供的 keytool 命令: keytool -list -v -keystore your_keystore_name -alias your_alias_name

但是我发现,当我将应用程序包 (.aab) 上传到 Play 商店时,地图无法使用,我需要将之前的 SHA-1 替换为出现在 Play Google Console -> MyApp -> Setup -> App Signing -> App signing key certificate 在我上传包之后。

有没有办法在上传捆绑包之前获得相同的 SHA-1 证书指纹? 为什么它们不一样?

谢谢

当您创建第一个版本时,系统会提示您是否要注册 Play Signing 以及是否要 Play 创建和存储您的应用签名密钥。看来你已经接受了。这意味着 Play 将使用他们为您创建的密钥对 APK 进行签名。您可以在此处阅读有关 Play Signing 的更多信息:https://support.google.com/googleplay/android-developer/answer/9842756

密钥(和证书)在您的应用程序生命周期内保持不变(除非您执行一些高级操作,例如旋转应用程序签名密钥),因此SHA-1 不会改变 并且永远保持不变。

请注意,如果您创建新应用,则在您注册 Play Signing 后,SHA-1 会立即出现在 App Signing 页面中。