如何使用 google 应用签名上传密钥对 apk 进行签名

How to sign apk with google app signing upload key

我丢失了我的 pepk.jar 文件,但我确实有我在第一次签署 apk 时生成并在 google 控制台中发布的密钥库。我尝试在控制台中签署更新的 apk 并上传,但它显示

您上传的 APK 未使用上传证书签名。您必须使用相同的证书。上传证书有指纹: [SHA1-------------------------]

并且用于签署您上传的 APK 的证书有指纹: [SHA1-----------------------------]

我这样试过

keytool.exe -importcert -file upload_cert.der -keystore <keystorefile>

但是在我使用上面生成的新密钥库对 apk 进行签名后,它会抛出相同的错误。

我检查了新旧 apk 的 SHA1,如下所示

keytool -list -printcert -jarfile original.apk
keytool -list -printcert -jarfile update.apk

我得到了不同的 SHA1,但现在的问题是如何使用原来的 SHA1 来签署新的 apk?

谁能指导我如何克服这个问题?

我不想创建新包并签署新应用程序,因为下载此应用程序的用户规模很大。

谢谢。

您似乎已经通过 Google Play 注册了 App Signing。当您注册时,您已经创建了另一个密钥库(或者可能在现有密钥库中创建了一个新密钥)并生成了一个您上传到 Play 管理中心的新证书。您必须找到并使用该密钥库和关联的 alias/password 来签署您的 APK。

如果您丢失了它,您可以联系 Google Play 支持团队重置您的上传密钥。请参阅 this page 上的 "Create a new upload key"。

希望对您有所帮助。