Android 如何检查 apk 是否使用 schema v2 签名

问题

Android N 提供了新的 apk 签名方案 v2,我们如何检查特定 apk 是否使用该新签名进行签名

方案一

对于手机上已安装的软件包:

adb shell pm dump  | grep apkSigningVersion. 

1表示常规 JAR 签名方案
2表示 APK 签名方案 v2。

方案二

对于未安装的apk :

grep 'APK Sig Block 42' app.apk

但这可能会出现误报。只有在没有匹配的情况下,才能确定 APK 没有使用 APK 签名方案 v2 进行签名。
出现 matches 代表是 v2 签名

方案三

运行apksigner verify -v 并输出Verified using v2 scheme (APK Signature Scheme v2): true
apksigner 可以在 Android SDK 构建工具 24.0.3 中找到。
apksigner 的源代码在这里:https ://android.googlesource.com/platform/tools/apksig/ 。

你可能感兴趣的:(Android 如何检查 apk 是否使用 schema v2 签名)