问题描述
我有一个使用 V1 签名(jar 签名)签名的 ionic-3 应用程序,并在 Google 商店发布。现在,从 2021 年 8 月开始,新应用将需要面向 API 级别 30 (Android 11)。
于是,我将API级别改为30,并使用v1签名进行签名,但Google并未接受该APK。
解决方法
您无法“升级”应用签名,而只需使用正确的签名工具退出应用即可。
这意味着不再使用 jarsigner
对 apk 文件进行签名!
改为使用 apksigner
(Windows/Linux 上的 apksigner.bat
/apksigner.sh
)为您的应用签名。 apksigner 是 Android SDK 构建工具的一部分。 apksigner 的最新版本(例如来自 build-tools 版本 31.x/30.x/29.x 总是默认创建一个 V1+v2 签名(我假设旧版本,也做 v1/v2 签名,但我不确定).
如果您在 android studio 中完成所有签名,请在制作发布版本时查看选项。它应该为您提供 v1 和 v2 签名的选项,您可以选择 v2。 Google Play 应该可以接受该签名的 apk。