新应用程序的Android App Sign问题:没有使用上传证书签名的apk

Sib*_*ota 6 android android-studio google-play-console app-signing

最近我上传了一个应用程序到现在正在播放的游戏商店,我也启用了应用登录.但是,当我尝试上传新版本时,我无法找到我的旧密钥库.所以,当我生成新的KEYSTORE并尝试上传时,我收到错误:

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

在此输入图像描述 请查看我的开发人员控制台,其中包含上传证书和应用程序签名证书.

在此输入图像描述

如何让apk使用相同的指纹签名并上传到Play商店?

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

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

注意:与KeyStore相关的许多关于堆栈溢出的问题,但这与谷歌"App Signing"的新功能有关,而且我没有得到合适的答案.

我已与Google联系,他们的回复并未确认任何内容.请从谷歌找到以下消息.

我很抱歉这个混乱,但是我可以看到你的应用程序(包名:com.wma.foodinns.foodinnsapp),你已经成功注册了谷歌的上传密钥,因此成功生成了一个上传密钥.您生成然后用于注册的上传密钥是您应该拥有的密钥,应该用于在将此应用的新APK上传到Play控制台时对您的APK进行签名.

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

您是否仍然拥有已创建的密钥,然后在Play控制台上注册为上传密钥?

Sib*_*ota 6

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

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

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

    1. 本地机器
    2. 锁定的现场服务器(不同的ACL)
    3. 云机(不同的ACL)
    4. 专用秘密管理服务
    5. (git)回购