[英]Generate signed APK after update Android Studio
我有一个很奇怪的问题。 多年前,我写了一个用Eclipse编写的应用程序。 然后,我升级到Android Studio 0.4.3,一切正常,但现在我删除了该AS,并使用新版本(Android Studio 141.xxxx)。
问题是,我使用相同的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。 了解有关签名的更多信息。
有人有主意吗? 这是类似的问题,但没有答案。
Okey ...最后,我解决了这个问题。 但是我仍然不知道为什么会这样。
首先,我确保之前使用相同的jks
jarsigner -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控制台。 一切都很好;)
我认为您遇到的问题是您没有使用自己的密钥存储文件来上传apk。 在IDE版本之间,该文件可能已更改。
有关此问题的解释,请参考此答案: https : //stackoverflow.com/a/4843261/3497739
另请阅读此参考页,以了解如何正确签名apk https://developer.android.com/tools/publishing/app-signing.html
祝好运
密钥库中可能有问题。
您已将使用其他证书签名的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的密钥库。
确保您使用相同的密钥库文件。 如果相同-再次重新生成密钥。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.