コマンドを使用して .apk パッケージに署名します。

プロジェクトの暗号化要件に基づいて、外部暗号化ツールを使用した後、APK の元の署名が削除されるため、暗号化された APK に再署名する必要があります。


署名手順は次のとおりです。

1. cmd を使用して、JDK インストール ディレクトリの下の bin サブディレクトリに移動します。
cd F:\Android\SdkJdk\jdk\bin
2. 署名が必要な .keystore ファイルと .apk ファイルを bin ディレクトリにコピーします。
3. 次のコマンドを実行して署名します。
// 其中 updatexxx.apk 是签名后的 apk 包名,xxx.apk 是当前没有签名的 apk 包名
// Key.keystore 是当前证书的路径,如果将证书放在 bin 目录下,则就是证书的文件名
// keyname 是该证书的别名,如果没有填写正确就会在签名时报错 “找不到证书链”
jarsigner -verbose -keystore Key.keystore -signedjar updatexxx.apk xxx.apk keyname
-verbos: 指定生成详细输出
-keystore: 指定数字证书存储路径
-signedjar: 该选项的三个参数为:签名后的 apk 包名、未签名的 apk 包名、数字证书别名

署名された APK は現在の bin ディレクトリに直接生成されます。

4. Zipalign による最適化

Android SDK の Zipalign を使用して、署名された APK ファイルを最適化します。Zipalign の導入については、この記事を参照してください。
私の Zipalign はこの場所にあるのでF:\Android\SdkJdk\android-sdk-windows\build-tools\29.0.2、署名された .apk ファイルをこのディレクトリに移動する必要があります。
次に、cmdで次のコマンドを使用します

// 进入对应的目录
cd F:\Android\SdkJdk\android-sdk-windows\build-tools\29.0.2
// 对签名 apk 进行优化
zipalign -f -v 4 UpdateKeyStore.apk New.apk
-f:指定强制覆盖已有文件
-v:指定生成详细输出
4:指定档案整理基于的字节数,一般是 4,也有基于 32 位的
UpdateKeyStore.apk:优化前的 apk
New.apk:优化后的 apk

最適化が完了したら、インストール パッケージ New.apk を公開できます。


参考記事:

1.コマンド ライン jarsigner の署名と解決策が証明書チェーン エラーを見つけられない
2. Android 署名ツール autoSign jarsigner
3.コマンドを使用して APK パッケージに署名する方法

おすすめ

転載: blog.csdn.net/EverNess010/article/details/114630571