MASTG-TECH-0039: 重新打包 & 重新签名
重新打包¶
您可以轻松地通过执行以下操作来重新打包应用程序
cd UnCrackable-Level1
apktool b
zipalign -v 4 dist/UnCrackable-Level1.apk ../UnCrackable-Repackaged.apk
请注意,Android Studio 构建工具目录必须在路径中。它位于 [SDK-Path]/build-tools/[version]
。zipalign
和 apksigner
工具位于此目录中。
重新签名¶
在重新签名之前,您首先需要一个代码签名证书。如果您以前在 Android Studio 中构建过一个项目,IDE 已经在 $HOME/.android/debug.keystore
中创建了一个调试密钥库和证书。此密钥库的默认密码是“android”,密钥名为“androiddebugkey”。
标准的 Java 发行版包括用于管理密钥库和证书的 keytool
。您可以创建自己的签名证书和密钥,然后将其添加到调试密钥库
keytool -genkey -v -keystore ~/.android/debug.keystore -alias signkey -keyalg RSA -keysize 2048 -validity 20000
证书可用后,您可以使用它重新签名 APK。确保 apksigner
在路径中,并且您从重新打包的 APK 所在的文件夹运行它。
apksigner sign --ks ~/.android/debug.keystore --ks-key-alias signkey UnCrackable-Repackaged.apk
注意:如果您在使用 apksigner
时遇到 JRE 兼容性问题,可以使用 jarsigner
代替。当您这样做时,必须在签名**之后**调用 zipalign
。
jarsigner -verbose -keystore ~/.android/debug.keystore ../UnCrackable-Repackaged.apk signkey
zipalign -v 4 dist/UnCrackable-Level1.apk ../UnCrackable-Repackaged.apk
现在您可以重新安装应用程序
adb install UnCrackable-Repackaged.apk