之前使用腾讯云免费加固后,再用jarsigner重签名。这在Android 11及以下的系统中没有出现过问题。但在Android 12版本的手机上会出现无法解析安装的情况。
初步判断是因为签名出了问题。参考了腾讯云社区的文章后,应该是需要使用zipalign工具进行对齐操作,再使用apksigner工具重签名。zipalign和apksigner都由Google官方提供。在Android SDK/build-tools/SDK版本/目录。
之前的签名语句为:
jarsigner -verbose -keystore 密钥库文件 -storepass 密码 -signedjar 生成的新APK文件 旧APK文件 密钥库别名
现在的方法为:
1、对齐:
zipalign -p -f -v 4 未对齐APK文件 生成的APK文件
对齐后可以进行验证:
zipalign -c -v 4 要验证的APK文件
2、签名:
apksigner sign --ks 密钥库文件 --ks-key-alias 密钥库别名 --ks-pass pass:密码 --v2-signing-enabled true -v --out 签名后的APK文件 要签名的APK文件
参考网址:
https://cloud.tencent.com/dev

在Android12系统上,使用腾讯云免费加固后并用jarsigner重签名的APK无法正常安装。问题可能源于签名过程。解决方案是先使用zipalign进行对齐操作,再用apksigner工具进行签名。步骤包括使用zipalign进行4字节对齐,然后使用apksigner进行V2和V1签名。确保遵循Google官方的签名和对齐流程,以确保在不同Android版本上的兼容性。
最低0.47元/天 解锁文章
731





