Nie mogę znaleźć narzędzia z Androidem

265

Staram się postępować zgodnie z samouczkiem mapowania Androida i dotarłem do tej części, w której musiałem uzyskać klucz API .

Znalazłem moją, debug.keystoreale keytoolw katalogu nie ma aplikacji:

C:\Documents and Settings\tward\\.android>ls
adb_usb.ini      avd       debug.keystore  repositories.cfg androidtool.cfg  ddms.cfg  default.keyset

W keytooltym katalogu również nie ma :

C:\Android\android-sdk-windows\tools>ls
AdbWinApi.dll     apkbuilder.bat       etc1tool.exe         mksdcard.exe
AdbWinUsbApi.dll  ddms.bat             fastboot.exe         source.properties
Jet               dmtracedump.exe      hierarchyviewer.bat  sqlite3.exe
NOTICE.txt        draw9patch.bat       hprof-conv.exe       traceview.bat
adb.exe           emulator.exe         layoutopt.bat        zipalign.exe
android.bat       emulator_NOTICE.txt  lib

Używam Eclipse jako mojego edytora i wierzę, że pobrałem wszystkie najnowsze SDK.

Co ja robię źle?

Tim
źródło
12
Wspaniały. Wysłałem moje drugie pytanie i dostaję „Tumbleweed” za moją pierwszą odznakę !!! Proszę drwić ze mnie delikatnie :-)
Tim
niesamowite, czy znalazłeś sposób na wydanie SHA1 w
systemie

Odpowiedzi:

441

keytoolpochodzi z Java SDK. Powinieneś go znaleźć w katalogu, który zawiera javacitp.

CommonsWare
źródło
153
Rozumiem: C: \ Program Files \ Java \ jdk1.6.0_14 \ bin Dzięki
Tim
5
można go nawet znaleźć w środowisku JRE ... Dzięki
Nick.T
4
Przydatną sztuczką jest zapisanie danych wyjściowych w pliku, aby można było pobrać klucz. Po prostu dodaj to na końcu:> somefilename.txt
Attaque
3
W C: \ Program Files \ Java \ jdk1.7.0_79 \ bin
Jean-François
18
Mój był w C:\Program Files\Android\Android Studio\jre\bin(Korzystanie ze Studio, nie Eclipse)
Tim Krins
99

Okej, więc ten post jest sprzed sześciu miesięcy, ale pomyślałem, że dodam tutaj informacje dla ludzi, którzy są zdezorientowani całym biznesem z kluczem API / MD5. Zajęło mi to trochę czasu, więc zakładam, że inni też mieli z tym problem (chyba że jestem tak nudny).

Te wskazówki dotyczą systemu Windows XP, ale wydaje mi się, że jest podobny w przypadku innych wersji systemu Windows. Wygląda na to, że użytkownicy komputerów Mac i Linux mają z tym łatwiejszy czas, więc nie będę się z nimi odnosił.

Aby więc korzystać z widoków map w aplikacjach na Androida, Google chce się z nimi zalogować, abyś mógł podpisać umowę dotyczącą warunków korzystania z interfejsów API Map Android. Myślę, że nie chcą, abyś tworzył aplikacje GPS krok po kroku, aby konkurować z ich lub coś takiego. Tak naprawdę tego nie przeczytałem. Ups

Więc przejdź do http://code.google.com/android/maps-api-signup.html i sprawdź to. Chcą, abyś zaznaczył pole „Przeczytałem i zgadzam się z warunkami” i wprowadził odcisk palca MD5 twojego certyfikatu. Można powiedzieć, że wtf. Nie wiem, ale po prostu rób co mówię, a twoja aplikacja na Androida nie ucierpi.

Przejdź do Start> Uruchom i wpisz cmd, aby otworzyć wiersz polecenia. Musisz przejść do katalogu z plikiem keytool.exe, który może znajdować się w nieco innym miejscu w zależności od zainstalowanej wersji JDK. Mój jest włączony, C:\Program Files\Java\jdk1.6.0_21\binale spróbuj przejść do folderu Java i sprawdź, jaką wersję posiadasz, i odpowiednio zmień ścieżkę.

Po przejściu do C: \ Program Files \ Java \ <„tutaj jest twoja wersja JDK”> \ bin w wierszu polecenia, wpisz

keytool -list -keystore "C:/Documents and Settings/<"your user name here">/.android/debug.keystore"

z cytatami. Oczywiście <"twoja nazwa użytkownika tutaj"> byłaby twoją własną nazwą użytkownika Windows.

(Jeśli masz problemy ze znalezieniem tej ścieżki i korzystasz z Eclipse, możesz sprawdzić Okno> Preferencje> Android> Kompilacja i sprawdzić „Domyślny magazyn kluczy debugowania”)

Naciśnij Enter, a poprosi o podanie hasła. Po prostu naciśnij enter. I voila, na dole jest twój odcisk palca MD5. Wpisz swój odcisk palca w polu tekstowym na stronie rejestracji interfejsu API Map Android i naciśnij Generuj klucz API.

I jest Twój klucz w całej okazałości, dzięki praktycznemu przykładowemu układowi XML z wprowadzonym kluczem, który możesz skopiować i wkleić.

awaria
źródło
Uratowałeś mi ból głowy lub dwa
zabawaba99
Czy nie powinny to być ukośniki odwrotne zamiast ukośników w systemie Windows?
Ryan R
Do Twojej wiadomości, jeśli używasz jdk1.7, dodaj modyfikator-v
Ryan R
Więcej osób powinno wyjaśniać tak jak ty!
K - Toksyczność w SO rośnie.
@ awaria, czy istnieje sposób, aby uzyskać SHA1 do wydania kompilacji w
systemie
17

Ok, zrobiłem to w 32-bitowym systemie Windows 7 .

krok 1 : przejdź do - C: \ Program Files \ Java \ jdk1.6.0_26 \ bin - i najpierw uruchom plik jarsigner.exe (podwójne kliknięcie)

Krok 2 : zlokalizować debug.keystore, w moim przypadku było - C: \ Users \ MyPcName \ .android

krok 3 : otwórz wiersz polecenia i przejdź do katalogu - C: \ Program Files \ Java \ jdk1.6.0_26 \ bin i wydaj następującą komendę: keytool -list -keystore "C: \ Users \ MyPcName \ .android \ debug.keystore"

step4 : poprosi teraz o hasło do magazynu kluczy. (zastanawiam się ...: -?)

aktualizacja: OK w moim przypadku hasło brzmiało „android”. - (Używam Eclipse dla Androida, więc znalazłem go tutaj). Postępuj zgodnie z instrukcjami w eclipse : Windows> preferencje> android> kompilacja> ..
(Zajrzyj do pola „default Debug Keystore” .)



Polecenie zmiany hasła do magazynu kluczy (spójrz tutaj): Zmień hasło do magazynu kluczy



rav
źródło
10

Powyższa 4-etapowa odpowiedź działała dla mnie, ale zwraca klucz SH1 ... ale Google prosi o klucz MD5 do wygenerowania klucza API.

Trzeba po prostu dodać „-v” w poleceniu w kroku 3. - podobnie jak:

Zaktualizowana 4-etapowa odpowiedź

Ok, zrobiłem to w 32-bitowym systemie Windows 7.

krok 1 : przejdź do - C: \ Program Files \ Java \ jdk1.7.0 \ bin - i najpierw uruchom plik jarsigner.exe (podwójne kliknięcie)

Krok 2 : zlokalizować debug.keystore (w Eclipse: Windows / Preferences / Android / build ..), w moim przypadku było - C: \ Users \ MyPcName.android

krok 3 : otwórz wiersz polecenia i przejdź do katalogu - C: \ Program Files \ Java \ jdk1.7.0 \ bin i wydaj następującą komendę: keytool -v -list -keystore "C: \ Users \ MyPcName.android \ debug.keystore"

step4 : poprosi teraz o hasło do magazynu kluczy. Domyślnie jest to „android”

fmak114
źródło
6

Nigdy nie instalowałem Java, ale po zainstalowaniu Android Studio ma swoją własną wersję w katalogu Android. Tutaj znajduje się moja. Twoja ścieżka może być podobna. Następnie możesz albo umieścić keytool na swojej ścieżce, albo po prostu uruchomić go z tego katalogu.

C:\Program Files\Android\Android Studio\jre\bin
Goddard
źródło
2

Wydawało się to o wiele trudniejsze do znalezienia niż w OSX. Zbyt wiele sprzecznych postów

W przypadku systemu Mac OSX Mavericks Java JDK 7 wykonaj następujące kroki, aby zlokalizować keytool:

Najpierw upewnij się, że zainstalowałeś Java JDK:

http://docs.oracle.com/javase/7/docs/webnotes/install/mac/mac-jdk.html

Następnie wpisz to w wierszu polecenia:

/usr/libexec/java_home -v 1.7

wypluje coś takiego:

/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home

keytoolznajduje się w tym samym katalogu co javac. to znaczy:

/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/bin

Z binkatalogu możesz użyć keytool.

przewodowy00
źródło
2

Jeśli używasz Android Studio dla Windows do utworzenia magazynu kluczy wydania i podpisanego pliku .apk, wykonaj następujące kroki:

1) Kompilacja> Generuj podpisany APK

2) Wybierz „Utwórz nowy ...”, wybierz ścieżkę do magazynu kluczy i wprowadź wszystkie wymagane dane

3) Po utworzeniu magazynu kluczy (twoja_nazwa_pliku_plików.jks) użyjesz go do utworzenia pierwszego podpisanego pliku APK w wybranym miejscu docelowym

Nie widziałem potrzeby używania narzędzia poleceń, jeśli masz IDE, takie jak Android Studio.

dlaczego?
źródło
być może do wykorzystania w celu odkrycia odcisku palca SHA1?
Iyas
0

W rzeczywistości zadzwoni eksport zaćmienia

java -jar android-sdk-windows\tools\lib\sdklib.jar com.android.sdklib.build.ApkBuilderMain

a następnie wywołaj com.android.sdklib.internal.build.SignedJarBuilder.

diyizm
źródło
0

Jedną z rzeczy, o których tu nie wspomniano (ale całkowicie powstrzymałem mnie przed uruchomieniem klucza), było to, że musisz uruchomić Wiersz polecenia jako Administrator.

Chciałem tylko to udostępnić ...

rogut
źródło
To prawdopodobnie powinien być komentarz, a nie odpowiedź.
Ian R. O'Brien,
1
Zgadzam się, że powinien to być komentarz, chociaż to pech, nie masz wystarczającej liczby przedstawicieli, aby móc komentować!
Joel Balmer,
0

Nie trzeba używać wiersza polecenia.

Jeśli PLIK-> „Eksportuj aplikację na Androida” w ADK, pozwoli ci utworzyć klucz, a następnie wygenerować plik .apk.

Lawrence Chernin
źródło