Android N - 如何检查apk是否使用架构v2签名

Lid*_*idi 18 android signature

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

谢谢

Ale*_*bin 22

  • 在输出中运行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的信息,在撰写原始答案时尚未提供.