No puedo encontrar la herramienta clave de Android

265

Estoy tratando de seguir el tutorial de mapeo de Android y llegué a esta parte donde tenía que obtener una clave API .

He encontrado mi debug.keystorepero no parece haber una keytoolaplicación en el directorio:

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

Tampoco hay keytoolen este directorio:

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

Estoy usando Eclipse como mi editor y creo que he descargado todo el SDK más reciente.

¿Qué estoy haciendo mal?

Tim
fuente
12
Excelente. ¡Publiqué mi segunda pregunta y recibí un "Tumbleweed" por mi primera insignia! Por favor, búrlate de mí suavemente :-)
Tim
increíble, ¿encontraste una manera de liberar SHA1 en Windows?
Pankaj Nimgade

Respuestas:

441

keytoolviene con el SDK de Java. Debería encontrarlo en el directorio que contiene javac, etc.

CommonsWare
fuente
153
Lo tengo: C: \ Archivos de programa \ Java \ jdk1.6.0_14 \ bin Gracias
Tim
55
incluso se puede encontrar en el JRE ... Gracias
Nick.T
44
Un truco útil es guardar la salida en un archivo, para que pueda tomar la clave. Simplemente agregue esto al final:> somefilename.txt
Attaque
3
En C: \ Archivos de programa \ Java \ jdk1.7.0_79 \ bin
Jean-François
18
El mío estaba en C:\Program Files\Android\Android Studio\jre\bin(Usando Studio, no Eclipse)
Tim Krins
99

De acuerdo, esta publicación es de hace seis meses, pero pensé que agregaría información aquí para las personas que están confundidas sobre todo el negocio de la clave API / huella digital MD5. Me tomó un tiempo darme cuenta, así que supongo que otros también han tenido problemas con él (a menos que sea tan aburrido).

Estas instrucciones son para Windows XP, pero imagino que es similar para otras versiones de Windows. Parece que los usuarios de Mac y Linux tienen más facilidad con esto, así que no los abordaré.

Entonces, para usar las vistas de mapa en sus aplicaciones de Android, Google desea verificar con ellas para que pueda cerrar la sesión en un acuerdo de Términos de servicio de las API de Android Maps. Creo que no quieren que hagas aplicaciones de GPS paso a paso para competir con las suyas o algo así. Realmente no lo leí. Ups

Ve a http://code.google.com/android/maps-api-signup.html y échale un vistazo. Quieren que marque la casilla "He leído y acepto los términos y condiciones" e ingrese la huella digital MD5 de su certificado. Wtf es eso, se podría decir. No lo sé, pero solo haz lo que te digo y tu aplicación de Android no se lastima.

Vaya a Inicio> Ejecutar y escriba cmd para abrir un símbolo del sistema. Debe navegar al directorio con el archivo keytool.exe, que puede estar en un lugar ligeramente diferente dependiendo de la versión JDK que haya instalado. La mía está dentro, C:\Program Files\Java\jdk1.6.0_21\binpero intente navegar a la carpeta Java y ver qué versión tiene y cambiar la ruta en consecuencia.

Después de navegar a C: \ Archivos de programa \ Java \ <"su versión JDK aquí"> \ bin en el símbolo del sistema, escriba

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

con las comillas Por supuesto, <"su nombre de usuario aquí"> sería su propio nombre de usuario de Windows.

(Si tiene problemas para encontrar esta ruta y está utilizando Eclipse, puede verificar Ventana> preferencias> Android> Compilar y consultar el "Almacén de claves de depuración predeterminado")

Presione enter y le pedirá una contraseña. Solo presiona enter. Y listo, en la parte inferior está tu huella digital MD5. Escriba su huella digital en el cuadro de texto en la página de registro de API de Android Maps y presione Generar clave de API.

Y ahí está su clave en todo su esplendor, con un práctico diseño xml de muestra con su clave ingresada para que pueda copiar y pegar.

mal funcionamiento
fuente
Me
ahorraste
¿No deberían ser barras invertidas, en lugar de barras diagonales, en Windows?
Ryan R
Para su información, si usa jdk1.7 agregue el modificador-v
Ryan R
¡Más gente debería explicar como tú!
K - La toxicidad en SO está creciendo.
@malfunction, ¿hay una manera de conseguir SHA1 para la liberación de construcción en las ventanas
Pankaj Nimgade
17

Ok, hice esto en el sistema Windows 7 de 32 bits.

paso 1 : ve a - C: \ Archivos de programa \ Java \ jdk1.6.0_26 \ bin - y ejecuta jarsigner.exe primero (doble clic)

Paso 2 : ubicar debug.keystore, en mi caso fue - C: \ Users \ MyPcName \ .android

paso 3 : abre el símbolo del sistema y ve a dir - C: \ Archivos de programa \ Java \ jdk1.6.0_26 \ bin y da el siguiente comando: keytool -list -keystore "C: \ Users \ MyPcName \ .android \ debug.keystore"

Paso 4 : solicitará la contraseña de Keystore ahora. (que estoy descubriendo ...: -?)

actualización: OK en mi caso, la contraseña era 'android'. - (Estoy usando Eclipse para Android, así que lo encontré aquí) Siga los pasos en eclipse : Windows> preferencias> android> compilación> ..
(Busque en el campo `Depuración de claves predeterminada ' ).



Comando para cambiar la contraseña del almacén de claves (mira aquí): cambiar las contraseñas del almacén de claves



rav
fuente
10

La respuesta de 4 pasos anterior funcionó para mí, pero devuelve la clave SH1 ... pero Google solicita la clave MD5 para generar su clave API.

Simplemente se necesita agregar una '-v' en el comando en el paso 3. -como así:

Respuesta actualizada de 4 pasos

Ok, hice esto en el sistema Windows 7 de 32 bits.

paso 1 : ve a - C: \ Archivos de programa \ Java \ jdk1.7.0 \ bin - y ejecuta jarsigner.exe primero (doble clic)

paso 2 : ubicar debug.keystore (en Eclipse: Windows / Preferences / Android / build ..), en mi caso fue - C: \ Users \ MyPcName.android

paso 3 : abre el símbolo del sistema y ve a dir - C: \ Archivos de programa \ Java \ jdk1.7.0 \ bin y da el siguiente comando: keytool -v -list -keystore "C: \ Users \ MyPcName.android \ debug.keystore"

Paso 4 : solicitará la contraseña de Keystore ahora. El valor predeterminado es 'android'

fmak114
fuente
6

Nunca instalé Java, pero cuando instalas Android Studio tiene su propia versión dentro del directorio de Android. Aquí es donde se encuentra el mío. Tu camino puede ser similar. Después de eso, puede poner la herramienta de claves en su ruta o simplemente ejecutarla desde ese directorio.

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

Esto parecía mucho más difícil de encontrar de lo que debe ser para OSX. Demasiadas publicaciones en conflicto

Para MAC OSX Mavericks Java JDK 7, siga estos pasos para ubicar keytool:

En primer lugar, asegúrese de instalar Java JDK:

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

Luego escriba esto en el símbolo del sistema:

/usr/libexec/java_home -v 1.7

escupirá algo como:

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

keytoolse encuentra en el mismo directorio que javac. es decir:

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

Desde el bindirectorio puede usar el keytool.

wired00
fuente
2

Si está utilizando Android Studio para Windows para crear un almacén de claves de lanzamiento y .apk firmado, solo siga estos pasos:

1) Construir> Generar APK firmado

2) Elija "Crear nuevo ...", elija la ruta al almacén de claves e ingrese todos los datos requeridos

3) Después de que se haya creado su almacén de claves (your_keystore_name.jks), lo usará para crear su primer apk firmado en el destino que elija

No he visto la necesidad de usar la herramienta de comando si tienes un IDE como Android Studio.

whyoz
fuente
tal vez para usar para descubrir la huella digital SHA1?
Iyas
0

De hecho, la exportación de eclipse llamará

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

y luego llame a com.android.sdklib.internal.build.SignedJarBuilder.

diyism
fuente
0

Una cosa que no se mencionó aquí (pero me impidió ejecutar keytool por completo) fue que necesita ejecutar el símbolo del sistema como administrador.

Solo quería compartirlo ...

rogut
fuente
Esto probablemente debería ser un comentario y no una respuesta.
Ian R. O'Brien
1
Estoy de acuerdo en que debería ser un comentario, aunque eso es mala suerte, ¡no tienes suficiente representante para comentar!
Joel Balmer
0

No es necesario usar la línea de comando.

Si ARCHIVO-> "Exportar aplicación de Android" en el ADK, entonces le permitirá crear una clave y luego producir su archivo .apk.

Lawrence Chernin
fuente