web-dev-qa-db-fra.com

Je ne trouve pas le Android keytool

J'essaie de suivre le tutoriel de cartographie Android et arrivé à cette partie où je devais obtenir une clé API .

J'ai trouvé mon debug.keystore mais il ne semble pas y avoir d'application keytool 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 de keytool dans 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é le dernier SDK.

Qu'est-ce que je fais mal?

258
Tim

keytool est fourni avec le Java SDK. Vous devriez le trouver dans le répertoire qui contient javac, etc.

431
CommonsWare

D'accord, ce billet date donc d'il y a six mois, mais j'ai pensé ajouter ici quelques informations aux personnes qui ne comprennent pas tout le commerce des clés d'API/empreintes MD5. Il m'a fallu un certain temps pour comprendre, alors je suppose que d'autres ont eu des problèmes avec ça aussi (à moins que je ne sois juste aussi ennuyeux).

Ces instructions concernent Windows XP, mais j’imagine qu’il en va de même pour les autres versions de Windows. Il semble que les utilisateurs de Mac et Linux ont plus de facilité avec cela, donc je ne vais pas les aborder.

Donc, pour utiliser les mapviews dans vos Android applications, Google souhaite les consulter afin de vous permettre de vous connecter à un Android Conditions d'utilisation du service API Maps. Je pense qu'ils ne veulent pas que vous créiez des applications GPS pas à pas pour rivaliser avec les leurs ou quelque chose du genre. Je ne l'ai pas vraiment lu. Oops.

Alors allez à http://code.google.com/Android/maps-api-signup.html et vérifiez-le. Ils vous demandent de cocher la case "J'ai lu et accepté les conditions" et de saisir l'empreinte MD5 de votre certificat. Wtf est que, pourriez-vous dire. Je ne sais pas, mais faites ce que je dis et votre Android application ne soit 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 emplacement légèrement différent, en fonction de la version de JDK que vous avez installée. Le mien est dans C:\Program Files\Java\jdk1.6.0_21\bin mais essayez de naviguer dans le 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 du 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 citations. Bien sûr, <"votre nom d'utilisateur ici"> serait votre propre nom d'utilisateur Windows.

(Si vous rencontrez des difficultés pour trouver ce chemin et que vous utilisez Eclipse, vous pouvez vérifier Fenêtre> Préférences> Android> Construire et extraire le "magasin de clés de débogage par défaut".)

Appuyez sur Entrée et il vous sera demandé un mot de passe. Appuyez simplement sur Entrée. Et voila, en bas se trouve votre empreinte digitale MD5. Saisissez votre empreinte digitale dans la zone de texte de la page Android Inscription à l'API Maps, puis cliquez sur Générer une clé API.

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

98
malfunction

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

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

step2 : localisez le fichier debug.keystore. Dans mon cas, il s’agissait de - C:\Users\MyPcName\.Android.

step3 : Ouvrez l'invite de commande et accédez à dir - C:\Program Files\Java\jdk1.6.0_26\bin et donnez la commande suivante: keytool -list -keystore "C:\Utilisateurs\MonPcName\.Android\debug.keystore"

step4 : il vous demandera maintenant un mot de passe Keystore. (ce que je suis en train de comprendre ...: -?)

mise à jour: OK dans mon cas, le mot de passe était ´ Android ´. J'utilise Eclipse pour Android, je l'ai donc trouvé ici) Suivez les étapes décrites dans Eclipse : Windows> préférences> Android> construire> ..
(Regardez dans le champ `` Debug Keystore ’ par défaut.)



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



17
rav

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

Il faut simplement ajouter un "-v" dans la commande à 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: allez à - C:\Program Files\Java\jdk1.7.0\bin - et lancez jarsigner.exe d’abord (double-cliquez)

step2: localisez le fichier debug.keystore (dans Eclipse: Windows/Préférences/Android/build ..), dans mon cas c’était - C:\Users\MyPcName.Android.

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

step4: il vous demandera maintenant un mot de passe Keystore. La valeur par défaut est "Android"

10
fmak114

Je n'ai jamais installé Java, mais lorsque vous installez Android Studio, il possède sa propre version dans le répertoire Android. Voici où se trouve le mien. Votre chemin peut être similaire. Après cela, vous pouvez soit mettre le keytool dans votre chemin, ou simplement le lancer depuis ce répertoire.

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

Cela semblait beaucoup plus difficile à trouver qu’il ne le faut pour OSX. Trop de messages contradictoires

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

Tout d’abord, assurez-vous d’installer Java JDK:

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

Puis tapez ceci dans l'invite de commande:

/usr/libexec/Java_home -v 1.7

il va cracher quelque chose comme:

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

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

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

Dans le répertoire bin, vous pouvez utiliser le fichier keytool.

2
wired00

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

1) Construire> Générer un APK signé

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

3) Après la création de votre magasin de clés (nom_votre_keystore.jks), vous l’utiliserez ensuite pour créer votre premier apk signé à 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.

1
whyoz

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

Je voulais juste le partager ...

0
rogut

En fait, l'exportation Eclipse appellera

Java -jar Android-sdk-windows\tools\lib\sdklib.jar com.Android.sdklib.build.ApkBuilderMain

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

0
diyism

Pas besoin d'utiliser la ligne de commande.

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

0
Lawrence Chernin