判断APK是不是为Debug包

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了判断APK是不是为Debug包相关的知识,希望对你有一定的参考价值。

参考技术A 由于在本产品中只有Release包才允许安装,而Debug包不允许安装,导致无法继续测试。

通过 jarsigner 来验证APK是否使用的Debug的签名。

如果使用的是Debug包,则会出现 android Debug 的字样:

如果是Release的签名,则 CN 会为公司证书名。

如何判断 Android 应用的 Apk 签名是不是一致

一、判断Apk是否签名
用命令:jarsigner -verify -verbose -certs <apk文件>
1、如果有Android Debug字样就是debug
2、如果已经签名: [证书的有效期为13-8-31 下午2:31至41-1-16 下午2:31]
二、判断Apk签名是否一致

jdk 需要安装;想查demo.apk所使用的签名的fingerprint,可以这样做:
1、查找apk里的rsa文件
Windows 平台:
> jar tf demo .apk |findstr RSA
Linux 平台:
$ jar tf demo .apk |grep RSA
META-INF/CERT.RSA
2、 从apk中解压rsa文件
jar xf demo .apk META-INF/CERT.RSA
3、获取签名的fingerprints
keytool -printcert -file META-INF/CERT.RSA
证书指纹:
MD5: 5A:5A:96:63:8E:EF:FC:66:9E:BC:1C:2A:A9:1E:E5:95
SHA1: 44:BD:33:2D:C5:21:AE:78:D5:04:92:1A:39:FD:AC:01:E2:32:3C:AB
SHA256: 2F:C0:A3:8C:0D:42:84:70:48:78:44:A4:2E:64:5B:50:B3:B3:1E:33:94:62:A3:9F:2F:10:DD:EF:D7:CF:02:0B
签名算法名称: SHA1withRSA
版本: 3
两个apk是否同签名,比较签名的MD5码或SHA1码 ,一样就是相同的,反之,不是。
参考技术A 绿遍山原白满州,子规声里雨如烟。

以上是关于判断APK是不是为Debug包的主要内容,如果未能解决你的问题,请参考以下文章

Android 是怎么判断某个APK文件是不是已经安装

Android 是怎么判断某个APK文件是不是已经安装

如何判断 Android 应用的 Apk 签名是不是一致?

Android 是怎么判断某个APK文件是不是已经安装

在splashActivity中判断版本号,从自己公司服务器下载新版本的apk

如何判断List是不是为空