好吧,人们。长话短说,我正在使用无法访问的计算机进行开发。我能够检索源代码,但无法检索用于签名和将我的应用程序发布到市场(带有多个更新)的.keystore文件。如果我想更新,我和我的可怜用户难道不是很幸运吗?
我知道用于签名密钥的密码(至少是它可能的三个)之一,所以我可以创建另一个吗?必须有解决的办法..硬盘故障怎么办?
Answers:
现在可能不用担心,这里是重置.JKS文件的完整步骤和最终步骤。
步骤1
从您的Google Play商店控制台下载UPLOAD CERTIFICATE(文件名-upload_cert.der)
第2步
转到此LINK https://support.google.com/googleplay/android-developer/contact/otherbugs,然后使用有效的电子邮件ID填写申请表,然后上传文件(upload_cert.der)。
第三步
现在您将获得支持团队的电子邮件,他们不需要您的.JKS文件,但是这里的.PEM文件是电子邮件示例。
第四步
要将.JKS文件转换为.PEM文件,只需下载KeyStore Explorer
回复邮件后,等待48到72个小时,您的密钥库填充将重置。
直到今天,丢失密钥将无法使用新版本更新您的应用程序。在这种情况下,唯一的解决方案是发布具有新程序包名称和密钥的新应用程序,并要求所有用户进行安装。
从今天开始,现在由Google Play安全管理Play控制台中的应用签名密钥,这意味着您仅负责管理上传密钥。如果您的上传密钥被盗用或丢失,Google的开发人员运营团队可以通过验证您的身份并重置您的上传密钥来为您提供帮助。Google仍将使用相同的应用程序签名密钥重新签名,以允许该应用程序照常更新。
对于现有应用,它需要将您的应用签名密钥转移到Google Play。对于新应用,Google可以生成您的应用签名密钥。注册应用签名后,您便可以使用一个上传密钥对APK进行签名,Google会使用该密钥对您的身份进行身份验证。然后,他们将删除该签名,并使用应用程序签名密钥对您的应用程序重新签名。
有可能很长一段时间。
keytool -genkeypair -alias newalias -keyalg RSA -keysize 2048 -validity 9125 -keystore nameofkeystore.jks
该密钥必须是2048位RSA密钥,并且有效期为25年。
keytool -export -rfc -alias newalias -file upload_certificate.pem -keystore nameofkeystore.jks
然后上传此pem文件并填写表格并将其提交到此站点。一旦我们注册了新的上传密钥,您将收到一封电子邮件。仅接受来自Play控制台帐户所有者的密钥重置请求。
一切都很好。您可以使用新的jks文件发布新版本的APK。
如果您知道密钥存储区密码,则仍然没有关联的私钥来对您的应用程序进行签名。您也没有机会生成与您的公钥对应的相同私钥。
因此:始终备份您的密钥库文件。它和您的源代码一样重要。
如果您为应用程序启用了Google Play应用签名,则无需担心。
要检查您是否启用了Google Play应用签名,请在Google Play控制台中转到发布管理->应用签名。
如果已启用,则可以通过填写支持表格与Google Play支持人员联系,或者您也可以选择与支持人员进行实时聊天,网址为:https : //support.google.com/googleplay/android-developer/answer/7218994? hl = en
向他们解释您的问题,他们将告诉您下一步,包括创建具有25年有效期的新2048位RSA密钥库,并将密钥导出为PEM格式并将其通过电子邮件发送给他们。
要将密钥导出为PEM格式:
keytool -export -rfc -alias upload -file upload_certificate.pem -keystore keystore.jks
从很长一段时间以来,我也一直在寻找解决方案,但直到现在都没有成功。如果您拥有应用程序apk的最新版本,则可以使用jarsigner cmd命令从中获取证书。但是您需要一个私钥进行更新。Google Play并未为此提供任何放松。
必须有解决的办法..硬盘故障怎么办?
我想补充一点,就是始终将密钥库的备份保存在Google云端硬盘,Dropbox等云存储中,或者通过电子邮件发送给自己。
是的,您可以使用新密钥发布对现有应用程序的更新!
Google现在允许您通过要求他们通过Google支持中的电子邮件/在线聊天重设新密钥来将新密钥上传到现有应用。
此过程需要1-2个工作日。
我遵循此过程,并使用新密钥将更新上传到同一应用程序。Google Play商店技术团队帮助我重置了先前的密钥。
现在有可能,如果您丢失了密钥库或密钥库密码,则可以在2017年5月之后更新应用程序。您无法恢复丢失的密钥库,但可以替换playstore上的密钥库。 点击这里
应用签名过程:
您可以在选择通过Google Play进行应用签名之前或之后上传使用原始应用签名密钥签名的APK。
如果您开始使用Android App Bundle,则可以在生产中使用现有的APK时在测试轨道中对其进行测试。该过程的工作原理如下:
- 签名您的应用捆绑包或APK,并将其上传到您的Play控制台。
根据您上传的内容,以下是签名过程的不同之处:
- 应用程序捆绑包:Google从您的应用程序捆绑包中生成优化的APK,并使用应用程序签名密钥对其进行签名。
- 使用上传密钥签名的APK:Google验证并从APK中剥离了您的签名,然后使用应用签名密钥对APK退出。
- 使用应用程序签名密钥签名的APK:Google验证签名。Google向用户提供签名的APK。