web-dev-qa-db-ja.com

Android N-apkがスキーマv2で署名されているかどうかを確認する方法

Android Nは新しいapk署名スキームv2を提供しましたが、特定のapkがその新しい署名で署名されているかどうかを確認するにはどうすればよいですか?

ありがとう

20
Lidi
  • _apksigner verify -v <apk>_を実行し、出力でVerified using v2 scheme (APK Signature Scheme v2): trueを探します。 apksignerはAndroid SDKビルドツール24.0.3にあります。apksignerのソースコードはここにあります: https://Android.googlesource.com/platform/tools/apksig/ =。

  • Android Nougat:_adb Shell pm dump <package name> | grep apkSigningVersion_。_1_は従来のJAR署名スキームを意味し、_2_はAPK署名スキームv2を意味します。

  • _grep 'APK Sig Block 42' app.apk_を実行することもできますが、これには誤検知が含まれる可能性があります。一致するものがない場合にのみ、APKがAPK署名スキームv2を使用して署名されていないことが確実です。

編集:元の回答が書かれたときにまだ利用できなかったapksignerに関する情報を追加しました。

20
Alex Klyubin