Android apk重新签名

654 阅读1分钟

apk重新签名需要使用zipalign工具进行对齐操作,否则Android 12版本的手机上会出现无法解析安装的情况

在Android SDK/build-tools/SDK版本/,按着shift键,鼠标右击,在此处打开命令窗口,输入zipalign

例如:

image.png

因为我这是PowerShell,命令前面需要加.\

-c  :检查.apk文件是否zipalign优化过

-f  :覆盖已经存在的文件

-p :页面对其存储对象文件

-v :输出优化后的详细信息 xx.apk

-z :将使用Zopfli

align : 字节对齐, 固定输入 4 就行, 是32位对齐

对齐,需要将apk复制到对应的目录下:

zipalign -p -f -v 4 未对齐APK文件 生成的APK文件

image.png

再进行签名:

apksigner sign --ks 密钥库文件 --ks-key-alias 密钥库别名 --ks-pass pass:密码 --v2-signing-enabled true -v --out 签名后的APK文件 要签名的APK文件

示例:

apksigner sign --ks H:\demo\app\demo.jks --ks-key-alias key --ks-pass pass:123456 --v2-signing-enabled true -v --out H:\sign.apk H:\Android\Sdk\build-tools\32.0.0\a.apk

签名成功后,会显示“Signed”