Tuş takımını nasıl bulabilir ve çalıştırabilirim


186

Burada Facebook Geliştiricilerinin bir geliştirme kılavuzunu okuyorum

Benim app için imza vermek için keytool kullanmanız gerektiğini söylüyor:

keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64

Çalıştırmak için tuş takımını nasıl bulacağımı bilmiyorum. Bir Windows komut istemi açmaya ve yukarıdaki komutu yapıştırmaya çalıştım, ancak işe yaramadı.


Linux tabanlı bir sistem kullanıyorsanız /usr/local/java/bin# ./keytoolWindows kullanıyorsanızfind the JDK install path and check bin folder
Elshan

Ben prob
ansour

Yanıtlar:


184

Alıntı olarak kendim bir çözüm buldum. İyi çalışıyor.

"C:\Program Files\Java\jdk1.6.0_26\bin\keytool.exe" -exportcert -alias
> sociallisting -keystore "D:\keystore\SocialListing"  |
> "C:\cygwin\bin\openssl.exe" sha1 -binary | "C:\cygwin\bin\openssl.exe"
> base64

6
Ben burada buldum: C: \ Program Files \ Java \ jre1.8.0_111 \ bin \ keytool.exe
Jaime Montoya

9
Veya C: \ Program Dosyaları \ Android \ Android Studio \ jre \ bin
SHAHM

Teşekkürler @ SHAHM: Java AGAIN'i açıkça indirmek ve en son sürüme yükseltmek için her hafta dinlenmek istemeyenler için harika.
Pete Alvin

116

Bunları Windows komut istemine girmeniz yeterlidir.

cd C:\Program Files\Java\jdk1.7.0_09\bin

keytool -exportcert -alias androiddebugkey -keystore "C:\Users\userName\.android\debug.keystore" -list -v

Temel şifre android

Sen sunulacak MD5, SHA1ve SHA256anahtarlar; İhtiyacınız olanı seçin.


3
bu benim için çalıştı. Hata ayıklama tuşları için -alias androiddebugkey kullanın.
Broo

Ben sonraki sürüm sürümü için kullanın: 1) cd C: \ Program Files \ Java \ jdk1.8.0_162 \ bin ve sonraki 2) keytool -list -v -keystore "C: \ AndroidProjects \ Project1 \ app \ myapp.keystore "
Andrew Grow

2
keytool error: java.lang.Exception: Only one command is allowed: both -exportcert and -list were specified.
Gustaf Liljegren

80

Android anahtar karma kodunu almak için şu adımları izleyin (facebook uygulamaları için)

  1. Windows için openssl'yi indirin buradan
  2. şimdi c sürücüsüne aç
  3. cmd istemini aç
  4. tip cd C:\Program Files\Java\jdk1.6.0_26\bin
  5. sadece yaz 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
  6. Bitti

Sertifika parmak izi (MD5) kodunu almak için aşağıdaki adımları izleyin

  1. Git - C: \ Program Dosyaları \ Java \ jdk1.6.0_26 \ bin
  2. bin klasörünün içinde jarsigner.exe dosyayı
  3. cmd istemini aç
  4. tip cd C:\Program Files\Java\jdk1.6.0_26\bin
  5. sonra tekrar cmd yazın keytool -list -keystore "C:/Documents and Settings/<your user name>/.android/debug.keystore"
  6. şimdi Keystore şifresini isteyecektir. Varsayılan " android" tipi ve enter
  7. Bitti.

Bu son adıma kadar benim için çalıştı. "Android" yazdıktan sonra çöp tükürüyor ... benim tahminim doğru kodlama kullanmıyor mu? "Falan" gibi bir şey girersem, şifrenin yanlış olduğunu söyler. Bu yüzden "android"
yazarken şifremin

Sorunu ben -list ve -v bayraklarını bırakmış olduğumu buldum
ArtOfWarfare

21

keytool, JDK'nın bir parçasıdır.

%{JAVA_HOME}\Exec deyimine veya başına başlamaya çalışın c:\{path to jdk}\bin.


Cer dosyasını ve truststore dosyasını aynı dizine koydum ve bu komutu kullandım:"%JAVA_HOME%\bin\keytool" -import -keystore truststore -file certificate.cer -alias my-alias
Todd Hale

13

KeyTool, JDK'nın bir parçasıdır. JDK'yı varsayılan ayarlarla yüklediğinizi varsayarsak,$JAVA_HOME/bin


9

Robby Pondcevabı, JAVA_HOMEortam değişkenini kullanmak ve yolda meydana gelebilecek boşlukları (örneğin Program Files) telafi etmek için genelleştirilebilir :

"%JAVA_HOME%\bin\keytool" -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64

4

keytool jdk'nin bir parçası, $ JAVA_HOME / bin / keytool olmalı


4

Keytool, Java SDK'nın bir parçasıdır. Java SDK dizininizde bulabilmeniz gerekir, örneğin C: \ Program Files \ Java \ jdk1.6.0_14 \ bin


4

Cmd penceresinde (Yönetici olarak çalıştırılması gerekir),

cd %JAVA_HOME% 

yalnızca sistem ortam değişkeninizi JAVA_HOME kurduysanız çalışır. Sistem değişkeninizi yolunuza göre ayarlamak için bunu yapabilirsiniz

setx %JAVA_HOME% C:\Java\jdk1.8.0_121\

Ardından,

cd c:\Java\jdk1.8.0_121\bin

veya

cd %JAVA_HOME%\bin

Ardından, JAVA jdk tarafından sağlanan komutları yürütün, örneğin:

keytool -genkey -v -keystore myapp.keystore -alias myapp

Enter tuşuna bastıktan sonra soruları cevaplamanız (değerleri cmd satırına yazmaya eşdeğer) yapmanız yeterli! Anahtar üretilecek


3

keytool, JDK bin dizininde ($ JAVA_HOME / bin) bulunur. JAVA_HOME, JDK kurulum dizininizdir. Bu komut satırını kullanmak için PATH ortam değişkeninize $ JAVA_HOME / bin eklemeniz gerekir.


3

Android: Android'de keytool komutunun nerede çalıştırılacağı

Keytool komutu, sınıf yolu değişkeninizde JRE ayarlanmışsa dos komut isteminizde çalıştırılabilir.

Örneğin, android için SDK Hata Ayıklama Sertifikasının MD5 Parmak İzini almak istiyorsanız,

sadece aşağıdaki komutu çalıştırın ...

C:\Documents and Settings\user\.android>  keytool -list -alias androiddebugkey -keystore debug.keystore -storepass android -keypass android

sertifikalandırılması C:\Documents and Settings\user\.android>gereken yolu içeren yol nerede debug.keystore.

Ayrıntılı bilgi için lütfen http://code.google.com/android/add-ons/google-apis/mapkey.html#getdebugfingerprint adresini ziyaret edin.


3

Eclipse sürümünüze bağlı olarak (Kepler kullanıyorum). Windows> Tercihler> Android> Oluştur'a gidin.

Hata ayıklama anahtar deponuzun konum yolunu ve SHA1 parmak izini bulacaksınız (kopyalayıp kullanabilirsiniz)


3

Bu, birçok upvotes alamadım başka bir yazı üzerinde buldum, ama benim için süper yararlı oldu. Yani buraya ekleyeceğiz.

Android Studio beraberinde bir klavye getirecek.

C:\Program Files\Android\Android Studio\jre\bin

Yazılarını yararlı bir referansla Richar Heap tarafından görebilirsiniz. Bunu daha önce görmüştüm ama unutmuşum. https://stackoverflow.com/a/51524526/4446406


2

Keytool'u Dizinde içine bulmak zorundadır JAVAC SDK .bu olduğunu contaijns Javac


2

Xamarin / mobil geliştirme desteğiyle visual studio yüklediyseniz C:\Program Files\Android\jdk\microsoft_dist_openjdk_{version}\bin\, benim durumumda olduğu gibi burada bir java yüklemesi olacak .


1

keytoolJDK ile birlikte gelir. Cygwin kullanıyorsanız, bu muhtemelen zaten yolunuzda. Aksi takdirde, JDK'nızın bin klasöründe dolaşabilirsiniz.

Kabuk borularının ( |) çalışması için muhtemelen cygwin kullanmanız gerekecektir .


Aşağıdaki komutun nasıl çalıştırılacağını söyleyebilir misiniz? keytool -exportcert -alias androiddebugkey -keystore ~ ​​/ .android / debug.keystore | openssl sha1 -binary | openssl base64
Nguyen Minh Binh

1
Evet yaptım. komutun üzerinde çalıştığımda CMD şöyle diyor: 'openssl' dahili veya harici komut, çalıştırılabilir program veya toplu iş dosyası olarak tanınmıyor.
Nguyen Minh Binh

Muhtemelen openssl paketini cygwin kurulumu ile de kurmanız gerekiyor.
Matthew Willis

1
Zaten openssl paketini kurdum. Sorun hala devam ediyor :(
Nguyen Minh Binh

Kendi başına openssl'i çalıştırabilir misin? "Open" yazıp tab tuşuna bastığınızda hangi seçenekleri görüyorsunuz?
Matthew Willis

1

Aynı sorunu yaşarken birkaç gözlem (Windows). 1. Kabuk borusu önemlidir. 2. OpenSSL veya Cygwin kullanıyorsanız, kesinlikle kurmanız gerekir. 3. keytool JDK ile birlikte gelir, böylece ya komutta işaret etmeniz ya da JDK / bin klasörüne (exe'nin bulunduğu yerde) cd'niz olması gerekir. 4. Hata ayıklama anahtar deposu genellikle ~ / .android / debug.keystore'da bulunur. 5. şifre-android geçiş olsun ya da istendiğinde yazın "android" dir. 6. Diğer ad için, anahtar deposu dosyasını herhangi bir düzenleyiciyle açabilir (KAYDETMEYİN, açıp kapatabilirsiniz) ve okuyabilirsiniz. 7. EN ÖNEMLİ - Anahtar deposu yolunu tırnak içinde ve dışında belirtmek arasında bir fark vardır. Çift tırnak içinde anahtar deposu yolu kullanarak çalıştım. Remix090378 olarak ve talimatlara göre, bu komut gerçekten işe yaradı - cd C: \ Program Files \ Java \ jdk1.7.0_09 \ bin

keytool -exportcert -alias androiddebugkey -keystore "C: \ Kullanıcılar \ kullanıcıAdı.android \ debug.keystore" -list -v


0

Benim durumumda, komutu kullanarak zaten bir APK dosyası oluşturmuştum ionic cordova build android --prodve mevcut APK dosyası için SHA-1 parmak izini almam gerekiyordu. Uygulama dizininde aşağıdaki komutu çalıştırarak nasıl edinebileceğim:

keytool -list -printcert -jarfile app-debug.apk

Yani, temelde yukarıdaki komutu aşağıdaki uygulama konumunda çalıştırdım:

C:\myApp\platforms\android\app\build\outputs\apk\debug>keytool -list -printcert -jarfile app-debug.apk

Bu bana SHA1 parmak izini verdi: 7B:6B:AD:...

Umarım bu birine yardımcı olur!


0

Sisteminize Java ve tercihen bir JDK yüklediğiniz göz önüne alındığında (sorunuzu belirttiğiniz için Windows'a yanıt veriyor) kurulumunuzun binklasöründe keytool yardımcı programına sahip olmalısınız .

Bu durumda, bundan sonra yapabileceğiniz şey , Windows bininizin ortam değişkenine o bin klasörünü eklemektirPATH .

Bir dahaki sefere bir Windows kabuğu açacağınız ve keytoolyazacağınız zaman gerçek yardımcı programı çalıştırabilirsiniz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.