問(wèn)題
Android N 提供了新的 apk 簽名方案 v2,我們?nèi)绾螜z查特定 apk 是否使用該新簽名進(jìn)行簽名
方案一
對(duì)于手機(jī)上已安裝的軟件包:
adb shell pm dump <package name> | grep apkSigningVersion.
1表示常規(guī) JAR 簽名方案
2表示 APK 簽名方案 v2。
方案二
對(duì)于未安裝的apk :
grep 'APK Sig Block 42' app.apk
但這可能會(huì)出現(xiàn)誤報(bào)。只有在沒(méi)有匹配的情況下,才能確定 APK 沒(méi)有使用 APK 簽名方案 v2 進(jìn)行簽名。
出現(xiàn) matches 代表是 v2 簽名
方案三
運(yùn)行apksigner verify -v <apk>并輸出Verified using v2 scheme (APK Signature Scheme v2): true
apksigner 可以在 Android SDK 構(gòu)建工具 24.0.3 中找到。
apksigner 的源代碼在這里:https ://android.googlesource.com/platform/tools/apksig/ 。