在使用命令行打包apk时,由于命令行打包直接将resources.arsc进行压缩,会导致这个问题出现,从而在android11及Android12版本的机型上无法安装,提示信息为:解析安装包出错,或者是Targeting R+(version 30 and above) requires the resources.arsc of installed APKs to be stored uncompressed and aligned on a 4-byte boundary]错误
在Android 11以上对resources.arsc文件需要进行对齐
1.将apk修改为targetApi28(不要30即可)
2.apk用v2加签
3.在build-tools中找到zipalign
./zipalign -p -f -v 4 /Users/ls/Desktop/发包/1.apk /Users/lishuai3/Desktop/发包/2.apk
然后再次签名
./apksigner sign --ks /Users/ls/Desktop/发包/xxxx.keystore --ks-key-alias xxx /Users/ls/Desktop/发包/2.apk