我想上传到Playstore,我的应用程序,将取代一个旧的版本,我没有加载我在过去。当我试图上传我的应用程序时,我有以下错误:
You uploaded an APK that is signed with a certificate other than that
of your previous APK. You must use the same certificate.
The APK existing certificates are signed by these fingerprint:
[SHA1: .... ]
The certificates used to sign the APK that you have loaded these fingerprint:
[SHA1: .... ]
我怎样才能得到拥有正确指纹的密钥存储库?
发布于 2015-05-11 08:28:25
我怎样才能得到拥有正确指纹的密钥存储库?
Google依靠关键的连续性来确保发布应用程序的开发人员是更新应用程序的同一个开发人员。
您应该在机器上安装相同的公钥/私钥,然后用私钥对APK进行签名。最后,将APK重新提交到播放商店。
如何从现有指纹开始创建密钥存储库?
你不能。你需要原始的公钥/私钥对。
您可以从现有的APK获取公钥。只需查看META-INF
目录即可。证书或公钥位于其中。
但是,您必须考虑RSA公钥以恢复私钥(或解决相关问题,如有限域中的离散根)。如果您这样做了,那么您将不关心签署APKs :)。例如,参见Crypto上的Calculating private keys in the RSA cryptosystem。
下面是如何使用jarsigner
和调试键从命令行签名。争论的顺序很重要。您应该使用真正的公钥/私钥对,而不是调试密钥。
jarsigner -verbose -keystore C:\Users\<user>\.android\debug.keystore \
-storepass android -keypass android -digestalg SHA1 \
-sigalg SHA1withRSA <package name>.apk androiddebugkey
https://stackoverflow.com/questions/30162602
复制相似问题