web-dev-qa-db-ja.com

APKファイルの署名を見つける方法は?

APKファイルの署名を見つける最も簡単な方法は何ですか?私はコードについて質問していないことに注意してください。私は自分のPCからそれを見つけたいだけです。このような署名975yYkKAQF + KST7g3ASHvHkYopq =

6
user3548321
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ファイルは1つだけである必要があります)。

次に、次のコマンドを発行します。

keytool -printcert -fileAndroid_.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 -list -keystoremy-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インストールディレクトリが含まれていることを確認してください。

アプリの署名に使用されたキーストアを確認するにはどうすればよいですか?

3
Charuක

https://github.com/warren-bank/print-apk-signature

例:print-apk-signature ./file.apk SHA-1

2
W. B.