您可以使用不同的密钥库来退出您的 apk。
按着这些次序:
签署发布:$1.apk -> $1_release.apk"
Step 1:删除任何先前的签名
- 更改您的扩展名
.apk
to .zip
.
- 打开并删除文件夹 META-INF
- 将扩展名更改为
.apk
Or
命令:zip [originalapk]
例子:zip "$1".apk -d
Step 2:使用release.keystore签名:
命令:
jarsigner –verbose –keystore [keystorefile] –signedjar [unalignedapk] [originalapk] alias_name
Example:
C:\Program Files\Java\jdk1.6.0_43\bin> jarsigner -verbose -keystore release.keystore -signedjar "$1"_unaligned.apk "$1".apk release
Step 3:对齐
命令:zipalign -f 4 [unalignedapk] [releaseapk]
Example:
C:\Users\Downloads\adt-bundle-windows-x86\adt-bundle-windows-x86\sdk\too ls>zipalign -f 4 "$1"_unaligned.apk "$1"_release.apk
Step 4:打扫干净
命令:rm 4 [unalignedapk]
例子:rm "$1"_unaligned.apk
附加命令可能会有所帮助:
- 使用 keytool 生成新密钥
keytool -genkey -alias -keystore
- 列出键
keytool -list -keystore
Note:
为了签署我们的 APK,我们将 JDK 从 1.7 降级到 1.6.0_43 更新。
Reason:
从 JDK 7 开始,默认签名算法已更改,要求您在签署 APK 时指定签名和摘要算法(-sigalg 和 -digestalg)。
Command:
jarsigner -verbose -sigalg MD5withRSA -digestalg SHA1 -keystore [keystorefile] [originalapk] alias_name