apksigner
文档地址
https://developer.android.com/studio/command-line/apksigner#rotate_signing_keys_2
您可以使用 Android SDK 构建工具的修订版 24.0.3 及更高版本中提供的 apksigner 工具为 APK 签名,并确保 APK 的签名能够在 APK 支持的所有版本的 Android 平台上成功通过验证。本页提供了有关如何使用该工具的简短指南,并可作为查阅该工具支持的不同命令行选项的参考文档。如需有关如何使用 apksigner 工具为 APK 签名的更完整说明,请参阅为您的应用签名指南。
注意:如果您在使用 apksigner 为 APK 签名后又对 APK 做了更改,则 APK 的签名将会失效。因此,要使用 zipalign 等工具,您必须在为 APK 签名之前使用。
用法
为 APK 签名
使用 apksigner 工具为 APK 签名的语法如下:
apksigner sign --ks keystore.jks |
--key key.pk8 --cert cert.x509.pem
[signer_options] app-name.apk
在您使用 apksigner 工具为 APK 签名时,必须提供签名者的私钥和证书。您可以通过两种不同的方式添加此信息:
使用 --ks 选项指定密钥库文件。
使用 --key 和 --cert 选项分别指定私钥文件和证书文件。私钥文件必须使用 PKCS #8 格式,证书文件必须使用 X.509 格式。
通常情况下,您只会使用一个签名者为 APK 签名。如果您需要使用多个签名者为 APK 签名,请使用 --next-signer 选项将要应用于每个签名者的常规选项集分隔开:
apksigner sign [signer_1_options] --next-signer [signer_2_options