Czytam przewodnika rozwoju Facebooku programiści tutaj
Mówi, że muszę użyć keytool, aby wyeksportować podpis mojej aplikacji, taki jak:
keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64
Nie wiem, jak znaleźć narzędzie, aby go uruchomić. Próbowałem otworzyć wiersz polecenia systemu Windows i wkleić powyższe polecenie, ale nie zadziałało.
/usr/local/java/bin# ./keytool
jeśli korzystasz z systemu Windowsfind the JDK install path and check bin folder
Odpowiedzi:
Znalazłem rozwiązanie samodzielnie, jak poniżej cytat. To działa dobrze.
źródło
Po prostu wprowadź je w wierszu polecenia systemu Windows.
Hasło podstawowe to
android
Zostanie przedstawiony z
MD5
,SHA1
iSHA256
kluczy; Wybierz ten, którego potrzebujesz.źródło
keytool error: java.lang.Exception: Only one command is allowed: both -exportcert and -list were specified.
Aby uzyskać kod skrótu dla Androida, wykonaj następujące kroki (dla aplikacji na Facebooku)
cd C:\Program Files\Java\jdk1.6.0_26\bin
keytool -export -alias myAlias -keystore C:\Users\<your user name>\.android\myKeyStore | C:\openssl-0.9.8k_WIN32\bin\openssl sha1 -binary | C:\openssl-0.9.8k_WIN32\bin\openssl enc -a -e
Aby uzyskać kod odcisku palca certyfikatu (MD5), wykonaj następujące kroki
jarsigner.exe
plikcd C:\Program Files\Java\jdk1.6.0_26\bin
keytool -list -keystore "C:/Documents and Settings/<your user name>/.android/debug.keystore"
android
” wpisz i wpiszźródło
keytool jest częścią JDK.
Spróbuj dodać
%{JAVA_HOME}\
do instrukcji exec lubc:\{path to jdk}\bin
.źródło
"%JAVA_HOME%\bin\keytool" -import -keystore truststore -file certificate.cer -alias my-alias
KeyTool jest częścią JDK. Znajdziesz go, zakładając, że zainstalowałeś JDK z ustawieniami domyślnymi w
$JAVA_HOME/bin
źródło
Robby Pond
Odpowiedź można uogólnić, aby użyćJAVA_HOME
zmiennej środowiskowej i zrekompensować wszelkie spacje, które mogą wystąpić na ścieżce (np.Program Files
):źródło
keytool jest częścią jdk, powinien to być $ JAVA_HOME / bin / keytool
źródło
Keytool jest częścią Java SDK. Powinieneś być w stanie znaleźć go w katalogu Java SDK, np. C: \ Program Files \ Java \ jdk1.6.0_14 \ bin
źródło
W oknie cmd (należy uruchomić jako administrator),
działa tylko, jeśli skonfigurowano systemową zmienną środowiskową JAVA_HOME. Aby ustawić zmienną systemową dla swojej ścieżki, możesz to zrobić
Następnie możesz wpisać
lub
Następnie wykonaj dowolne polecenia dostarczone przez JDVA jdk, takie jak
Musisz tylko odpowiedzieć na pytania (równoważne wpisaniu wartości na linii cmd) po naciśnięciu Enter! Klucz zostanie wygenerowany
źródło
keytool znajduje się w katalogu bin JDK ($ JAVA_HOME / bin). JAVA_HOME to katalog instalacyjny JDK. Aby użyć tego wiersza poleceń, należy również dołączyć $ JAVA_HOME / bin do zmiennej środowiskowej PATH.
źródło
Android: gdzie uruchomić komendę keytool w Androidzie
Polecenie Keytool można uruchomić w wierszu polecenia dos, jeśli w zmiennej classpath ustawiono środowisko JRE.
Na przykład, jeśli chcesz uzyskać odcisk palca MD5 certyfikatu debugowania SDK dla Androida,
po prostu uruchom następujące polecenie ...
gdzie
C:\Documents and Settings\user\.android>
jest ścieżka zawierająca to,debug.keystore
które musi być certyfikowane.Aby uzyskać szczegółowe informacje, odwiedź http://code.google.com/android/add-ons/google-apis/mapkey.html#getdebugfingerprint
źródło
W zależności od twojej wersji Eclipse (używam Keplera). Przejdź do systemu Windows> Preferencje> Android> Kompilacja.
Znajdziesz ścieżkę lokalizacji swojego magazynu kluczy debugowania, a także odcisk palca SHA1 (który możesz po prostu skopiować i użyć)
źródło
Znalazłem to w innym poście, który nie uzyskał wielu pozytywnych opinii, ale był dla mnie bardzo pomocny. Dodaję to tutaj.
Android Studio przyniesie ze sobą narzędzie.
C:\Program Files\Android\Android Studio\jre\bin
Możesz zobaczyć jego post poniżej Richar Heap, z pomocnym odniesieniem. Widziałem to wcześniej, ale zapomniałem o tym. https://stackoverflow.com/a/51524526/4446406
źródło
KEYTOOL znajduje się w JAVAC SDK. Więc musisz go znaleźć w katalogu zawierającym javac
źródło
Jeśli zainstalowałeś Visual Studio z obsługą programowania Xamarin / mobile, będziesz mieć tutaj instalację Java
C:\Program Files\Android\jdk\microsoft_dist_openjdk_{version}\bin\
, podobnie jak mój przypadek.źródło
keytool
pochodzi z JDK. Jeśli używasz cygwina, prawdopodobnie jest to już na twojej ścieżce. W przeciwnym razie możesz przekopać się w folderze bin JDK.Prawdopodobnie będziesz musiał mimo wszystko użyć cygwin, aby powłoki shell (
|
) działały.źródło
Kilka uwag, gdy otrzymywałem ten sam problem (Windows). 1. Rura płaszczowa jest ważna. 2. Jeśli używasz OpenSSL lub Cygwin, zdecydowanie musisz go zainstalować. 3. keytool jest dostarczany z JDK, więc albo musisz wskazać go w poleceniu, albo masz cd do folderu JDK / bin (gdzie znajduje się exe) 4. Magazyn kluczy debugowania zazwyczaj znajduje się w ~ / .android / debug.keystore 5. hasło to „android”, bez względu na to, czy go pominiesz, czy wpiszesz po wyświetleniu monitu. 6. W przypadku nazwy aliasu możesz otworzyć (nie zapisywać, po prostu otworzyć i zamknąć) plik magazynu kluczy za pomocą dowolnego edytora i go przeczytać. 7. NAJWAŻNIEJSZE - Istnieje różnica w określaniu ścieżki do magazynu kluczy w cudzysłowach i bez. Udało mi się to, wykorzystując ścieżkę do pliku kluczy w podwójnych cudzysłowach. Jak powiedział remiks090378 i zgodnie z instrukcją, to polecenie rzeczywiście działało - cd C: \ Program Files \ Java \ jdk1.7.0_09 \ bin
keytool -exportcert -alias androiddebugkey -keystore "C: \ Users \ nazwa_użytkownika.android \ debug.keystore" -list -v
źródło
W moim przypadku wygenerowałem już plik APK za pomocą polecenia
ionic cordova build android --prod
i potrzebowałem uzyskać odcisk palca SHA-1 dla już istniejącego pliku APK. Oto, jak go uzyskałem, uruchamiając następujące polecenie w katalogu aplikacji:keytool -list -printcert -jarfile app-debug.apk
Zasadniczo uruchomiłem powyższe polecenie w następującej lokalizacji aplikacji:
C:\myApp\platforms\android\app\build\outputs\apk\debug>keytool -list -printcert -jarfile app-debug.apk
To dało mi odcisk palca SHA1 jako:
7B:6B:AD:...
Mam nadzieję, że to komuś pomoże!
źródło
Biorąc pod uwagę, że zainstalowałeś Javę i najlepiej JDK w swoim systemie (odpowiadając na Windows, ponieważ wspomniałeś o tym w swoim pytaniu), powinieneś mieć narzędzie keytool w
bin
folderze instalacji .W takim przypadku możesz następnie dodać ten folder bin do
PATH
zmiennej środowiskowej instalacji systemu Windows.Następnym razem, gdy otworzysz powłokę Windows i wpiszesz, będziesz
keytool
mógł uruchomić właściwe narzędzie.źródło