Android应用程序签名问题与新更新:未使用上传证书签名的apk

7

我最近上传了一款应用到play-store,并启用了应用程序登录,但是当我尝试上传新版本时,无法找到旧的密钥库。因此,当我生成新的KEYSTORE并尝试上传时,会出现错误:

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

enter image description here 请查看我的开发者控制台,其中包含上传证书和应用签名证书。

enter image description here

如何获得具有相同指纹的apk签名并上传到play-store?

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

如果您丢失密钥库或认为其可能被攻击,请使用Google Play应用签名请求重置您的上传密钥。如果您未注册Google Play应用签名并且丢失了密钥库,则需要发布一个新的具有新包名称的应用。

注意:关于KeyStore的相关问题在stackoverflow上有很多,但这与Google的新功能“App Signing”有关,我没有找到任何合适的答案。

我已经联系了Google,但他们的回复没有确认任何事情。请在下面查看google的信息。

很抱歉造成困惑,但是我可以看到您的应用(包名:com.wma.foodinns.foodinnsapp)已经成功将上传密钥注册到 Google 并因此成功生成了上传密钥。您生成并用于注册的上传密钥仍然留存在您这边,在上传新 APK 到 Play Console 时应该使用该密钥对 APK 进行签名。
您可以从 Play Console 下载的证书不是完整的上传密钥,而是包含公钥以及有关拥有密钥人的某些额外标识信息(欲了解更多信息,请参见此处列出的定义: https://support.google.com/googleplay/android-developer/answer/7384423?hl=en&ref_topic=7072031)。
您是否仍然拥有已创建并注册为上传密钥的密钥?
4个回答

9

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

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

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

    1. 本地计算机
    2. 锁定的现场服务器(各种访问控制列表)
    3. 云计算机(各种访问控制列表)
    4. 专用的秘密管理服务
    5. (git)代码库

我丢失了keystore.jks文件,因此无法上传新的apk,所以我联系了Google并他们解释了上述步骤。然后Google在他们的服务器上更改了新的密钥库,我们现在能够上传新的apk :) - Siba Prasad Hota

3
由于您正在使用谷歌应用程序签名程序,您可以请求重置上传密钥。要这样做,您需要与谷歌联系,请参见下面的截屏:
联系我们 -> 在Google Play上发布应用程序 -> 应用程序签名证书和密钥库问题 -> 要求重置上传密钥,请“联系我们”
请注意保留 HTML 标记。

我已经联系过他们了,但他们的回复并没有确认任何事情。 - Siba Prasad Hota
有时候电子邮件帮助并不快速,您可以在格林威治时间(GMT)周一至周五上午5点至晚上10点与他们聊天。我知道这一点,因为我曾经在填写Android评分问卷时联系过他们。 - AndroidLearner

0

由于您正在使用Google Play应用签名,因此您可以创建一个新的上传密钥,然后联系Google支持。请参阅文档,特别是该页面末尾的“丢失或泄露私钥”部分。


我已经联系过他们,但他们的回答并没有确认任何事情。 - Siba Prasad Hota

-1

抱歉Siba,如果你丢失了密钥库,你就没有太多办法了。我的意思是,如果存在一种方法,那么这不会破坏密钥库系统的整个安全功能吗?

我个人有三个重要密钥库的备份位置。你很幸运,因为你的应用程序可能不是太新,并且有很多用户。只需重新发布此应用程序(使用不同的包名称),你就可以继续使用了。这次记得保存密钥库。


谢谢,但是应用程序在3到4天内仅获得了150次下载和65个五星级评价,所以失去它相当令人失望。但这是我唯一的选择。 - Siba Prasad Hota
不错!这些对于一个新应用来说是非常好的数字。但是相信我,当你拥有一个每天增长10k+的百万下载量应用时,你会看到世界的变化 :) 而且你可以很快地恢复这些数字,所以这并不是真正的损失。 - Bqin1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接