升级Java密钥库签名密钥后,App签名密钥未变更的技术咨询
应用跨商店更新签名密钥问题排查过程
我们需要将应用发布到多个应用商店,因此必须保证所有商店的应用签名密钥一致,才能让用户正常更新。
初始问题
- 首次上传App Bundle到Play Console时,平台使用自身生成的密钥签名,导致应用无法在其他商店更新,此时App signing key certificate与Upload key certificate不一致。
尝试解决的操作
- 使用
pepk.jar工具,将Android Studio生成的keystore文件打包为.zip文件,上传至Play Console的App integrity >> Upgrade your app signing key板块。 - 执行的命令如下:
java -jar pepk.jar --keystore=android_studio_keystore.jks --alias=android_studio_keystore_alias --output=output.zip --signing-keystore=android_studio_keystore.jks --signing-key-alias=android_studio_keystore_alias --encryptionkey=*************
- 操作时,
keystore和signing-keystore均指定为Android Studio创建的.jks文件,完成后App signing key certificate与Upload key certificate显示一致。
后续问题与验证
- 上传新版本App Bundle并发布后,依然因签名密钥不一致无法在其他商店更新。
- 从Play Console的App Bundle Explorer下载最新APK,执行
keytool -printcert -jarfile apkfile.apk命令查看certificate fingerprint,发现与Play Console显示的信息不符。 - 对比测试:用Android Studio和自行创建的keystore生成签名APK,执行相同
keytool命令查看的certificate fingerprint,与Play ConsoleApp integrity页面显示的一致。
结论
看起来升级Java密钥库签名密钥后,Play Console并未使用新的上传密钥为App Bundle签名。
内容的提问来源于stack exchange,提问作者Hussein Yaqoobi
相关产品推荐
相关产品推荐

