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

40

Android N 提供了新的apk签名方案v2, 我该如何检查一个特定的apk是否使用了这个新的签名方式?

谢谢

1个回答

56
运行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 apkSigningVersion1表示传统的JAR签名方案,2表示APK签名方案v2。
您还可以运行grep 'APK Sig Block 42' app.apk,但这可能会有误报。只有当没有匹配项时,才能确定该APK未使用APK签名方案v2进行签名。

谢谢!我可以确认前两种方法在针对Android 11的应用程序中运行良好。 - android_dev
确认一下,第一个对我来说非常好。 - Mr.P

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接