查找apk文件签名的最简单方法是什么?请注意,我并不是在询问代码.我只想从我的电脑中找到它.像这样的签名975yYkKAQF KST7g3ASHvHkYopq =
解决方法:
Signature[] sigs = context.getPackageManager().getPackageInfo(context.getPackageName(), PackageManager.GET_SIGNATURES).signatures;
for (Signature sig : sigs)
{
Trace.i("MyApp", "Signature hashcode : " + sig.hashCode());
}
http://developer.android.com/reference/android/content/pm/PackageManager.html
这可能会有所帮助
首先,解压缩APK并解压缩文件/META-INF/ANDROID_.RSA(此文件也可以是CERT.RSA,但应该只有一个.RSA文件).
然后发出以下命令:
keytool -printcert-文件ANDROID_.RSA
您将获得像这样的证书指纹:
MD5: B3:4F:BE:07:AA:78:24:DC:CA:92:36:FF:AE:8C:17:DB
SHA1: 16:59:E7:E3:0C:AA:7A:0D:F2:0D:05:20:12:A8:85:0B:32:C5:4F:68
Signature algorithm name: SHA1withRSA
然后再次使用keytool来打印出签名密钥库的所有别名:
keytool-列表-keystore my-signing-key.keystore
您将获得别名及其证书指纹的列表:
android_key,2010年1月23日,PrivateKeyEntry,
证书指纹(MD5):B3:4F:BE:07:AA:78:24:DC:CA:92:36:FF:AE:8C:17:DB
瞧!现在,我们可以确定APK已使用此密钥库以及别名“ android_key”进行了签名.
Keytool是Java的一部分,因此请确保您的PATH中包含Java安装目录.
How do I find out which keystore was used to sign an app?