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

问题

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

方案一

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

adb shell pm dump <package name> | grep apkSigningVersion. 

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

方案二

对于未安装的apk :

grep 'APK Sig Block 42' app.apk

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

方案三

运行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/

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。