【问题标题】:How to update android application after Google has reset the keyGoogle重置密钥后如何更新Android应用程序
【发布时间】:2019-07-02 06:08:49
【问题描述】:

我丢失了我的密钥库 (.jks) 文件,我很幸运 - 我以前使用过应用签名。 因此,Google 能够帮助我并重置我的密钥。

但是,谷歌通过邮件给我的 SHA1 下一步是什么? 他们给了我生成upload_certificate.pem 文件的说明,我通过邮件发送给他们。

然后,谷歌的回答是:

好消息 - 我能够注册您的新上传密钥,您需要更新您的应用以使用新的上传密钥证书: SHA1:....

现在我尝试使用用于生成 PEM 文件的 jks 文件以及新创建的 jks 文件上传 APK。在谷歌游戏控制台中我得到:

您的 Android App Bundle 使用错误的密钥签名。确保您的 app bundle 使用正确的签名密钥进行签名,然后重试

下一步是什么?

【问题讨论】:

  • 您何时收到电子邮件?新上传的密钥库通常需要 2 天才能生效。
  • @jake 你是对的,他们告诉我这需要 2 天,已经一周了。我什至不知道现在该怎么办。
  • 您确定您使用的密钥库和别名与您用来生成您发送给他们的证书的相同吗?如果是,请再次与他们联系。
  • 嗨@Pierre :) 是的,我正在使用相同的。但是你说的使用是什么意思?我正在尝试使用我生成的 pem 文件(用于谷歌)的密钥库再次更新。这应该有效吗?
  • 感谢您跟进修复。这可能是 Studio 中的错误。如果您可以在 Studio 的问题跟踪器中提交错误,团队可以进行调查。

标签: android google-play android-keystore android-app-signing


【解决方案1】:

在我尝试了所有想到的方法后,包括 Android Studio 中的“使缓存无效并重新启动”,有效的解决方案是 Build->clean。 感谢戴夫Hubbard's answer

【讨论】:

    【解决方案2】:

    大概您在“创建上传密钥”下创建了一个新的上传密钥following the instructions。这些大致是:

    • generate an upload key and store it safely。这会在名为“upload-keystore.jks”的密钥库中为您提供一个别名类似于“上传”的密钥
    • 使用类似$ keytool -export -rfc -keystore upload-keystore.jks -alias upload -file upload_certificate.pem 的命令以 PEM 格式导出您的证书

    如果这是您所做的,那么您需要使用您在第 1 步“upload-keystore.jks”中使用别名“upload”创建的密钥库对您的应用程序进行签名

    他们发送给您的 SHA1 只是确认您使用了正确的密钥库的一种方式。如果您仍在使用您发送给他们的 PEM 的密钥库,那么如果您从 APK 打印出证书密钥库,它应该与该 SHA1 匹配。

    您可以使用以下命令从已签名的 APK 中打印证书的 SHA1

    keytool -list -printcert -jarfile app.apk

    这将告诉您用于签名的证书(密钥/密钥库)的 SHA1。

    【讨论】:

    • 好的,所以我想我做了我应该做的,用我用于 pem 的 jks 生成 apk。它不起作用。我想我将不得不再次与他们联系。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-13
    • 2022-12-29
    • 2015-03-26
    • 2012-10-07
    相关资源
    最近更新 更多