问题
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/ 。
网友评论