7

最近我已经将一个应用程序上传到现在已经上线的应用商店,并且我也启用了应用程序登录。但是,当我尝试上传新版本时,我无法找到我的旧密钥库。因此,当我生成新的 KEYSTORE 并尝试上传时,出现错误:

您上传了一个未使用上传证书签名的 apk。您必须使用相同的证书。

在此处输入图像描述 请查看我的开发者控制台,它同时具有上传证书和应用签名证书。

在此处输入图像描述

如何获取使用相同指纹签名的 apk 并上传到 play-store?

参考:https ://support.google.com/googleplay/android-developer/answer/7384423?hl=en

如果您丢失了密钥库或认为它可能已被盗用,Google Play 应用签名可以请求重置您的上传密钥。如果您未注册 Google Play App Signing 并丢失了密钥库,则需要使用新包名称发布新应用。

注意:与 KeyStore 有关的许多关于堆栈溢出的问题,但这是与谷歌“应用程序签名”的新功能相关的一些事情,我没有得到合适的答案。

我已经联系了谷歌,他们的回复没有确认任何事情。请从谷歌找到以下消息。

很抱歉造成混淆,但是我可以看到对于您的应用程序(包名称:com.wma.foodinns.foodinnsapp),您已成功向 Google 注册了上传密钥,因此成功生成了上传密钥。您生成然后用于注册的上传密钥是您应该仍然拥有的密钥,并且应该在将此应用的新 APK 上传到 Play 管理中心时用于签署您的 APK。

您可以从 Play 管理中心下载的证书不是完整的上传密钥,而是包含公钥以及一些关于谁拥有密钥的额外识别信息(有关此内容的更多信息,请参阅此处列出的定义: https:/ /support.google.com/googleplay/android-developer/answer/7384423?hl=en&ref_topic=7072031)。

您是否仍然拥有您创建的、然后在 Play 管理中心注册为上传密钥的密钥?

4

4 回答 4

9

最后,谷歌帮助我解决了这个问题。我已经写了一封电子邮件来描述这个问题,然后在得到他们的回复后,按照以下步骤操作。

  1. 我创建了新的密钥库。
  2. 将该密钥的证书导出为 PEM 格式:
keytool -export -rfc -alias upload -file upload_certificate.pem -keystore keystore.jks
  1. 回复他们的电子邮件并附上 upload_certificate.pem 文件。
  2. 然后谷歌发了一封电子邮件说他们已经更新了我的密钥库,我可以在 3 到 4 天后使用它。
  3. 我使用了新生成的密钥库,他们生成了已成功上传到 Playstore 的签名 APK。

    以下是更新密钥库所需的位置列表

    1. 本地机器
    2. 锁定的现场服务器(不同的 ACL)
    3. 云机器(不同的 ACL)
    4. 专门的秘密管理服务
    5. (git) 回购
于 2017-08-17T13:03:13.633 回答
3

由于您使用的是Google 应用签名程序,您可以请求重置您的上传密钥。为此,您需要联系 Google。如下图所示:

联系我们

联系我们 -> 在 Google Play 上发布应用程序 -> 应用程序签名证书和密钥库问题 -> 要请求重置您的上传密钥,请联系我们

重置上传密钥

于 2017-08-10T04:06:08.470 回答
0

由于您使用的是 Google Play App Signing,因此您只需创建一个新的上传密钥,然后联系 Google 支持。请参阅文档,特别是该页面末尾附近的“丢失或损坏的私钥”部分。

于 2017-08-10T03:46:52.980 回答
-1

对不起 Siba,但是如果您丢失了密钥库,您将无能为力。我的意思是,如果存在一种方法,那不会破坏密钥库系统的整个安全功能吗?

我个人有 3 个重要密钥存储的备份位置。你很幸运,因为你的应用程序可能不是太新,有很多用户。只需重新发布此应用程序(使用不同的包名称),您就可以开始了。保存我们这次要使用的基石。

于 2017-08-10T03:35:49.603 回答