问题是,我使用相同的JKS证书,但上传后 到Google Play商店,我看到有关手指差异的沟通 打印。
您上传了使用其他证书签名的APK 你以前的APK。您必须使用相同的证书。你现有的 APK使用带有指纹的证书进行签名:
[SHA1:D0:D9:BE:8B:D2:6A:5F:xxxxxxxxxxxxxxxxxxxx:F4:D9:91:66:06:12]
以及用于签署您上传的APK的证书都有指纹:
[SHA1:DA:53:9F:A7:D3:3C:8D:xxxxxxxxxxxxxxxxxxxx:CE:1F:F2:AB:0B:64]
我尝试签署我的应用手册,但后来我就进行了沟通。
上传失败您上传了签名无效或丢失的APK 某些文件的信息。您需要创建一个有效的签名 APK。了解有关签名的更多信息。
有人有想法吗? Here是类似的问题,但没有回答。
答案 0 :(得分:1)
Okey ......最后我解决了这个问题。但我还是不知道为什么会这样。
首先,我确保在
之前使用相同的jksjarsigner -verify -verbose:summary -certs old.apk
jarsigner -verify -verbose:summary -certs new.apk
证书看起来一样。所以我构建我的应用程序并使用我的证书签名。但它不起作用。
所以我手动制作了
然后我手动使用 jarsigner 然后 zipalign.exe 。
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore key.jks -storepass MYPASSWORD app-release-unaligned.apk 1
zipalign -f -v 4 app-release-unaligned.apk app-release.apk
然后我将app-release.apk上传到Google控制台。一切都很好;)
答案 1 :(得分:0)
我相信你遇到的问题是你上传的apk没有使用自己的密钥存储文件。 该文件可能在IDE版本之间发生了变化。
参考这个答案,解释为什么这是一个问题: https://stackoverflow.com/a/4843261/3497739
另请阅读此参考页面以了解如何正确签署您的apk https://developer.android.com/tools/publishing/app-signing.html
祝你好运答案 2 :(得分:0)
密钥库中可能存在问题。
您上传了使用其他证书签名的APK到之前的APK。您必须使用相同的证书。您现有的APK使用带有指纹的证书进行签名:
[SHA1:D0:D9:BE:8B:D2:6A:5F:xxxxxxxxxxxxxxxxxxxx:F4:D9:91:66:06:12]
以及用于签署您上传的APK的证书都有指纹:
[SHA1:DA:53:9F:A7:D3:3C:8D:xxxxxxxxxxxxxxxxxxxx:CE:1F:F2:AB:0B:64]
这意味着您使用了错误的密钥库,而不是您用于签署以前版本的APK的密钥库。
确保使用相同的密钥库文件。如果相同 - 再次重新生成密钥。