2013-03-04 12 views
7

Aby uzyskać klucze do mojego projektu Android, Google wymaga odcisku palca SHA1. Oferowane polecenia: keytool-lista-v-kluczy mystore.keystoreJak uzyskać odciski palców SHA1 z certyfikatu P12?

Przeszedłem przez różne opcje, ale zawsze w błędzie Nielegalne opcji: Pliki keytool: -list [opcja] ...

Dla przykładem dla mnie rozkazem:

C:\Program Files (x86)\Java\jre7\bin>keytool -storepass mypass -list -v -keystore C:\Program Files (x86)\Java\jre7\bin\android.p12 

Jeżeli ustawić plik p12 root (c :) potem dostać kolejny błąd - Błędny format kluczy.

Odpowiedz

9

Dla formatu p12 (PKCS12) użyj opcji -storetype PKCS12.

Na przykład

keytool -list -v -keystore mykeystore.p12 -storetype PKCS12 -storepass 123456 

Dla kontroli kluczy/certyfikatu & manipulacji i zalecane narzędzie GUI Portecle (dawniej KeyToolGUI). Here to wygodny instalator systemu Windows.

+0

Wielkie dzięki, Paweł. Działa dobrze. – Astraport

+0

Działa również na komputerze Mac przez terminal. ;) – crooksy88

9

Można to również zrobić z OpenSSL:

openssl pkcs12 -in <my pkcs12 file>.p12 -nodes -passin pass:<passphrase, or blank> |openssl x509 -noout -fingerprint 
+0

Dodałbym -md5 after -fingerprint. Poza tym działa dobrze. – Piohen

0

Jeśli używasz Android Studio. Można uzyskać fastly świadectwie odcisk SHA1 (debug, release ... wszystko Budowanie Rodzaje !!) przez Gradle zadania:

signingReport

SHA1 jest pokazane w Wiadomości Logi

Dodatek Android (skonfigurowany w aplikacji gradle) tworzy debugowanie tryb domyślnie. trasa Plik do kluczy: HOME/.android/debug.keystore

polecam dołączyć debug.keystore do build.gradle. Aby to zrobić, umieść plik debug.keystore w folderze aplikacji.

Dodatek: Jeśli chcesz utworzyć wersję do wydania, umieść plik release.keystore w folderze aplikacji. (Ten przykład używa tego samego debug.keystore)

Powiązane problemy