我如何检查Android apk是用发布而不是调试证书签名的?


当前回答

最简单的方法:

keytool -list -printcert -jarfile file.apk

它使用Java内置的keytool应用程序,不需要提取或任何构建工具安装。

其他回答

使用控制台命令:

APKSIGNER 验证 --打印证书应用程序开发发布.apk

你可以在../sdk/build-tools/24.0.3/apksigner.bat中找到apksigner。仅适用于构建工具v. 24.0.3及更高版本。

请阅读谷歌docs: https://developer.android.com/studio/command-line/apksigner.html

使用以下命令:(Jarsigner在您的Java bin文件夹中,在cmd提示符中进入Java ->jdk->bin路径)

$ jarsigner -verify my_signed.apk

如果.apk签名正确,Jarsigner打印“jar已验证”

keytool -printcert -jarfile base.apk

最简单的方法:

keytool -list -printcert -jarfile file.apk

它使用Java内置的keytool应用程序,不需要提取或任何构建工具安装。

使用此命令(在cmd提示符中进入java < jdk < bin路径)

$ jarsigner -verify -verbose -certs my_application.apk

如果你看到“CN=Android Debug”,这意味着.apk是用Android SDK生成的调试密钥签名的 (意味着它是无符号的),否则你会找到一些CN。 详情见:http://developer.android.com/guide/publishing/app-signing.html