Je ne trouve pas le keytool Android


265

J'essaie de suivre le tutoriel de cartographie Android et je suis arrivé à cette partie où j'ai dû obtenir une clé API .

J'ai trouvé mon debug.keystoremais il ne semble pas y avoir d' keytoolapplication dans le répertoire:

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

Il n'y a pas non plus keytooldans ce répertoire:

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

J'utilise Eclipse comme éditeur et je pense avoir téléchargé tous les derniers SDK.

Qu'est-ce que je fais mal?


12
Génial. Publié ma deuxième question et je reçois un "Tumbleweed" pour mon premier badge !!! Veuillez vous moquer de moi doucement :-)
Tim

génial, avez-vous trouvé un moyen d'obtenir la version SHA1 sur Windows
Pankaj Nimgade

Réponses:


441

keytoolest livré avec le SDK Java. Vous devriez le trouver dans le répertoire qui contient javac, etc.


153
Je l'ai: C: \ Program Files \ Java \ jdk1.6.0_14 \ bin Merci
Tim

5
peut même le trouver dans le JRE ... Merci
Nick.T

4
Une astuce utile consiste à enregistrer la sortie dans un fichier, afin que vous puissiez saisir la clé. Ajoutez simplement ceci à la fin:> somefilename.txt
Attaque

3
Dans C: \ Program Files \ Java \ jdk1.7.0_79 \ bin
Jean-François

18
Le mien était dans C:\Program Files\Android\Android Studio\jre\bin(Using Studio, not Eclipse)
Tim Krins

99

D'accord, donc ce post date d'il y a six mois, mais je pensais que j'ajouterais ici des informations pour les gens qui sont confus au sujet de l'ensemble de l'activité clé USB / empreinte digitale MD5. Il m'a fallu un certain temps pour comprendre, donc je suppose que d'autres ont également eu des problèmes avec ça (à moins que je ne sois pas si ennuyeux).

Ces instructions sont pour Windows XP, mais j'imagine que c'est similaire pour d'autres versions de Windows. Il semble que les utilisateurs de Mac et Linux aient plus de facilité avec cela, donc je ne les aborderai pas.

Par conséquent, afin d'utiliser des vues de carte dans vos applications Android, Google souhaite les contacter afin que vous puissiez vous connecter à un accord sur les conditions d'utilisation des API Android Maps. Je pense qu'ils ne veulent pas que vous fassiez des applications GPS détaillées pour rivaliser avec les leurs ou quelque chose. Je ne l'ai pas vraiment lu. Oups.

Allez donc sur http://code.google.com/android/maps-api-signup.html et vérifiez-le. Ils veulent que vous cochez la case «J'ai lu et j'accepte les termes et conditions» et entrez l'empreinte digitale MD5 de votre certificat. Wtf est cela, pourrait-on dire. Je ne sais pas, mais faites ce que je dis et votre application Android ne sera pas blessée.

Allez dans Démarrer> Exécuter et tapez cmd pour ouvrir une invite de commande. Vous devez accéder au répertoire contenant le fichier keytool.exe, qui peut se trouver à un endroit légèrement différent en fonction de la version JDK que vous avez installée. Le mien est dedans C:\Program Files\Java\jdk1.6.0_21\binmais essayez de naviguer jusqu'au dossier Java et voyez quelle version vous avez et changez le chemin en conséquence.

Après avoir accédé à C: \ Program Files \ Java \ <"votre version JDK ici"> \ bin dans l'invite de commande, tapez

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

avec les guillemets. Bien sûr, <"votre nom d'utilisateur ici"> serait votre propre nom d'utilisateur Windows.

(Si vous rencontrez des problèmes pour trouver ce chemin et que vous utilisez Eclipse, vous pouvez vérifier Fenêtre> préférences> Android> Créer et consulter le "Fichier de clés de débogage par défaut")

Appuyez sur Entrée et il vous demandera un mot de passe. Appuyez simplement sur Entrée. Et voila, en bas se trouve votre empreinte digitale MD5. Tapez votre empreinte digitale dans la zone de texte sur la page d'inscription à l'API Android Maps et appuyez sur Générer la clé d'API.

Et il y a votre clé dans toute sa splendeur, avec un exemple de mise en page XML pratique avec votre clé entrée pour que vous puissiez copier et coller.


Vous m'avez sauvé un mal de tête ou deux
zabawaba99

Ne devrait-il pas s'agir de barres obliques inverses, au lieu de barres obliques, sous Windows?
Ryan R

Pour info, si vous utilisez jdk1.7 ajoutez le modificateur-v
Ryan R

Plus de gens devraient expliquer comme vous!
K - La toxicité du SO augmente.

@malfunction, existe-t-il un moyen d'obtenir SHA1 pour la version build sur Windows
Pankaj Nimgade

17

Ok, je l'ai fait dans le système Windows 7 32 bits.

étape 1 : accédez à - C: \ Program Files \ Java \ jdk1.6.0_26 \ bin - et exécutez d'abord jarsigner.exe (double-cliquez)

étape 2 : recherchez debug.keystore, dans mon cas c'était - C: \ Users \ MyPcName \ .android

étape 3 : ouvrez l'invite de commande et accédez au répertoire - C: \ Program Files \ Java \ jdk1.6.0_26 \ bin et exécutez la commande suivante: keytool -list -keystore "C: \ Users \ MyPcName \ .android \ debug.keystore"

étape 4 : il vous demandera maintenant le mot de passe Keystore. (que je devine ...: -?)

mise à jour: OK dans mon cas, le mot de passe était ´ android ´. - (J'utilise Eclipse pour android, donc je l'ai trouvé ici) Suivez les étapes dans eclipse : Windows> préférences> android> build> ..
(Regardez dans le champ `default Debug Keystore´ .)



Commande pour changer le mot de passe du magasin de clés (regardez ici): Changer les mots de passe du magasin de clés




10

La réponse en 4 étapes ci-dessus a fonctionné pour moi, mais elle renvoie la clé SH1 ... mais Google demande la clé MD5 pour générer votre clé API.

Il suffit simplement d'ajouter un «-v» dans la commande de l'étape 3. -comme ceci:

Réponse en 4 étapes mise à jour

Ok, je l'ai fait dans le système Windows 7 32 bits.

étape 1 : accédez à - C: \ Program Files \ Java \ jdk1.7.0 \ bin - et exécutez d'abord jarsigner.exe (double-cliquez)

étape 2 : recherchez debug.keystore (dans Eclipse: Windows / Préférences / Android / build ..), dans mon cas c'était - C: \ Users \ MyPcName.android

étape 3 : ouvrez l'invite de commande et accédez au répertoire - C: \ Program Files \ Java \ jdk1.7.0 \ bin et exécutez la commande suivante: keytool -v -list -keystore "C: \ Users \ MyPcName.android \ debug.keystore"

step4 : il vous demandera maintenant le mot de passe Keystore. La valeur par défaut est 'android'


6

Je n'ai jamais installé Java, mais lorsque vous installez Android Studio, il a sa propre version dans le répertoire Android. Voici où se trouve la mienne. Votre chemin peut être similaire. Après cela, vous pouvez soit placer le keytool dans votre chemin, soit l'exécuter simplement à partir de ce répertoire.

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

2

Cela semblait beaucoup plus difficile à trouver que cela ne devrait l'être pour OSX. Trop de messages contradictoires

Pour MAC OSX Mavericks Java JDK 7, procédez comme suit pour localiser keytool :

Assurez-vous d'abord d'installer Java JDK:

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

Tapez ensuite ceci dans l'invite de commande:

/usr/libexec/java_home -v 1.7

il crachera quelque chose comme:

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

keytoolse trouve dans le même répertoire que javac. c'est à dire:

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

Depuis le binrépertoire, vous pouvez utiliser le keytool.


2

Si vous utilisez Android Studio pour Windows pour créer un fichier de clés de version et un .apk signé, procédez comme suit:

1) Créer> Générer un fichier APK signé

2) Choisissez "Créer nouveau ...", choisissez le chemin d'accès au magasin de clés et entrez toutes les données requises

3) Une fois que votre keystore (your_keystore_name.jks) a été créé, vous l'utiliserez ensuite pour créer votre première apk signée à la destination de votre choix

Je n'ai pas vu la nécessité d'utiliser l'outil de commande si vous avez un IDE comme Android Studio.


peut-être à utiliser pour découvrir l'empreinte SHA1?
Iyas

0

En fait, l'exportation éclipse appellera

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

puis appelez com.android.sdklib.internal.build.SignedJarBuilder.


0

Une chose qui n'a pas été mentionnée ici (mais qui m'a empêché d'exécuter keytool) était que vous devez exécuter l'invite de commande en tant qu'administrateur.

Je voulais juste le partager ...


Cela devrait probablement être un commentaire et non une réponse.
Ian R. O'Brien

1
Je suis d'accord devrait être un commentaire, bien que ce soit de la malchance, vous n'avez pas assez de représentants pour commenter!
Joel Balmer

0

Pas besoin d'utiliser la ligne de commande.

Si vous FICHIER-> "Exporter une application Android" dans l'ADK, cela vous permettra de créer une clé puis de produire votre fichier .apk.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.