2016-07-25 15 views

Antwort

2
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

könnte dies

Zunächst entpacken Sie die APK und entpacken Sie die Datei /META-INF/ANDROID_.RSA (diese Datei kann auch helfen CERT.RSA, aber es sollte nur eine .RSA-Datei geben).

erteilen Sie dann diesen Befehl ein:

keytool -printcert -datei ANDROID_.RSA Sie Zertifikat Fingerabdrücke wie diese:

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 

dann die keytool verwenden wieder die Aliase alle auszudrucken Ihre Unterzeichnung Schlüsselspeicher:

keytool -list -keystore my-Signatur-key.keystore Sie erhalten eine Liste der Aliase und dessen Zertifikat Fingerabdruck erhalten:

android_key, Jan 23, 2010, PrivateKeyEntry, Zertifikat Fingerabdruck (MD5): B3: 4F: BE: 07: AA: 78: 24: Gleichstrom: CA: 92: 36: FF: AE: 8C: 17: DB Voila! Wir können nun feststellen, dass die Apk mit diesem Keystore und mit dem Alias ​​'android_key' signiert wurde.

Keytool ist Teil von Java, also stellen Sie sicher, dass Ihr PATH Java-Installationsverzeichnis enthält.

+0

Siehe meine aktualisierte Frage. Ich frage nicht nach Code – user3548321

+0

, warum Sie die Signatur selbst manuell finden wollen oder wollen Sie den Pfad der signierten Apk bekommen? –

+0

Nein Ich möchte die Signatur selbst finden. Nicht nur Pfad – user3548321