不久前,我将自己的应用上传到谷歌Play(游戏邦注:当时它还叫Android Market)。
今天我更新了应用程序,但我已经删除了以前的密钥存储库,并创建了一个新的。
上传时,它说APK必须与之前的版本使用相同的证书进行签名:
上传失败
您上传了一个使用不同证书签名的APK到以前的APK。必须使用相同的证书。
您现有的apk已使用带有指纹的证书进行签署:
[SHA1: 89:2F: 11: FE: CE: D6: CC: DF: 65: E7:76:3E: DD: A7:96:4F: 84: DD: BA: 33)
用于签署您上传的APK的证书具有指纹:
(SHA1: 20:26: F4: C1: DF: 0 f: 2 b: D9:46:03: FF:阿瑟:07:B1:28:7B: 9 c: 75:44: CC]
但是我没有这个证书,也不想删除并重新发布应用程序,因为它有活动用户。
如何用新证书签署我的应用程序?
请检查你的android/app/build。Gradle文件
android{
...
buildTypes {
release {
// signingConfig signingConfigs.debug
signingConfig signingConfigs.release
}
}
...
}
在释放appbundle之前,它应该有signingConfig signingConfig。释放这一行enabled而不是signingConfig signingConfig .debug这一行。
我犯了这个愚蠢的错误。
我在其他设备上测试我的更新应用程序,通过在配置中发布调试登录,当我准备发布更新时,我没有更改配置,并发布了具有调试配置的捆绑包。
在我挠头大约一个小时后,我意识到我一直有这个调试配置,然后我把它改为发布模式,现在问题解决了。
在这里我得到了这个问题的答案。在搜索了太长时间后,我终于破解了这个密钥和密码。我忘记了我的钥匙和别名,也jks文件,但幸运的是,我知道一串密码,我把它。但找到正确的组合对我来说是最困难的任务。
解决方案-
下载这个- Keytool IUI版本2.4.1插件
窗口将弹出现在它显示别名..如果您的JKS文件正确..
右键单击别名,点击“查看证书链”..
它会显示SHA1键..匹配此密钥与您在谷歌应用程序商店上传apk时获得的密钥…
如果它匹配,那么你是正确的JKS文件和别名..
现在幸运的是我有一串密码来匹配..
现在转到这个屏幕,放入相同的JKS路径..和密码(在你拥有的密码中)在“证书文件”中输入任意路径
如果屏幕显示任何错误,那么密码不匹配..如果没有显示任何错误,则意味着您使用的是正确的JKS文件。正确的别名和密码()
现在,你可以上传你的apk在play商店:)