studio sh1 opcional obtener huella generate firma depuración certificado android google-maps android-studio

sh1 - obtener sha1 android studio



¿Cómo obtener el certificado de huella digital SHA-1 en Android Studio para el modo de depuración? (30)

Me cambié de Eclipse a Android Studio . Ahora estoy tratando de trabajar en mi aplicación de mapas. Entonces necesito mi número de certificado de huella digital SHA-1.

Cuando estaba usando Eclipse estaba justo debajo de Windows -> Preferencias -> Android -> Compilar . Pero en Android Studio no pude encontrar ninguna opción como esta para poder encontrar fácilmente la huella digital. Estoy usando Windows He leído desde este link que:

Android Studio firma su aplicación en modo de depuración automáticamente cuando ejecuta o depura su proyecto desde el IDE.

Así que intenté ejecutar esto en la línea de comando después de configurar mi ruta bin de Java desde este enlace y desafortunadamente no pude encontrar mi huella digital. Está diciendo que es una opción ilegal .

keytool -list -v -keystore "%USERPROFILE%/.android/debug.keystore" -alias androiddebugkey -storepass android -keypass android

¿Hay alguna manera de encontrar la huella digital SHA-1 de Android Studio como si fuera muy fácil en Eclipse? Como soy novato en Android Studio, ¿cuál es el proceso completo para encontrarlo?

Otra cosa que quiero agregar es que tengo mi Eclipse genera la huella digital SHA-1 y anteriormente tengo mi aplicación registrada en esa huella digital en la consola del desarrollador de Google, y trabajé en esa aplicación en Eclipse con esa clave API. ¿Se puede trabajar la misma clave API en este mi proyecto en Android Studio?


Encontré un proceso muy fácil para encontrar su huella digital MD5, SHA-1 usando Android Studio.

  1. Ejecute su proyecto
  2. Vaya al menú de Gradle (Menú: Ver -> Ventanas de herramientas -> Gradle)
  3. Vaya a ''signatureReport'' en la ventana de Gradle. (Su proyecto -> Tareas -> android -> SignatureReport)
  4. Ejecutarlo. (Usando doble clic o Ctrl + Shift + F10)
  5. En la ventana Ejecutar encontrarás toda la información.

Funciona solo para el modo de depuración. En modo realease no puedo ver sha-1. Aquí resultado de la gradlew signingReport

Variant: release Config: none ---------- Variant: releaseUnitTest Config: none ---------- Variant: debug Config: debug Store: path/Android/avd/.android/debug.keystore Alias: AndroidDebugKey MD5: xx:xx:xx:62:86:B7:9C:BC:FB:AD:C8:C6:64:69:xx:xx SHA1: xx:xx:xx:xx:0F:B0:82:86:1D:14:0D:AF:67:99:58:1A:01:xx:xx:xx Valid until: Friday, July 19, 2047 ----------

Entonces debo usar keytool para obtener sha-1. Aquí el documento oficial de Firebase:

Get_sha-1_for_release


  1. Haga clic en el icono de Gradle en el panel derecho.
  2. Haga clic en el nombre del proyecto raíz.
  3. Haga clic en Tareas
  4. Haga clic en Android
  5. Haga clic en firmaReporte
  6. en el panel inferior donde ves Ejecutar informe
  7. Haga clic en "Alternar tareas / modo de texto"
  8. puedes ver el sha-1


Acabo de encontrar el caso para obtener SHA-1 en Android Studio:

  1. Haga clic en su paquete y elija Nuevo -> Google -> Actividad de Google Maps
  2. Android Studio te redirige a google_maps_api.xml

Y verá todo lo que necesita para obtener google_maps_key .


Al crear un nuevo "Proyecto Google Maps", en Android Studio V 1.5.1, la última pantalla abre el archivo google_maps_api.xml y muestra la pantalla con las siguientes instrucciones:

Recursos:

TODO: antes de ejecutar su aplicación, necesita una clave API de Google Maps.

Para obtener uno, siga este enlace, siga las instrucciones y presione "Crear" al final:

https://console.developers.google.com/flows/enableapi?apiid=maps_android_backend&keyType=CLIENT_SIDE_ANDROID&r= SU SHA-1 + SU NOMBRE DE PAQUETE

También puede agregar sus credenciales a una clave existente, utilizando esta línea:
SU SHA-1: SU NOMBRE DE PAQUETE

Alternativamente, siga las instrucciones aquí:
https://developers.google.com/maps/documentation/android/start#get-key

Una vez que tenga su clave (comienza con "AIza"), reemplace la cadena "google_maps_key" en este archivo.
<string name="google_maps_key" templateMergeStrategy="preserve" translatable="false">YOUR GOOGLE MAPS KEY</string>

Para obtener SU CLAVE DE GOOGLE MAPS simplemente corte y pegue el enlace URL proporcionado en su navegador y siga las instrucciones anteriores al momento de crear la nueva aplicación. Los Package names SHA-1 y Package names ya están en el enlace proporcionado, por lo que no necesita saberlos. Sin embargo, estarán en su proyecto en el archivo de resources>Values>google_maps_api.xml que se completa cuando sigue las instrucciones para crear el proyecto.


Es muy muy fácil en Gnu / Linux - Mac - Windows

Primero: copie este comando

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android

Segundo: ahora copie y pegue el comando en la terminal de Android Studio

¡Resultado!

¡¡Buena suerte!!


Esto funcionó en mi caso: use % USERPROFILE% en lugar de proporcionar la ruta .keystore archivo almacenado en esta ruta automáticamente C: Usuarios / nombre de usuario / .android :

keytool -list -v -keystore "%USERPROFILE%/.android/debug.keystore" -alias androiddebugkey -storepass android -keypass android


Esto funcionó para mí:

keytool -exportcert -alias androiddebugkey -keystore

Coloque path-to-debug-or-production-keystore aquí como C: / users / youruser.android / debug.keystore -list -v

Asegúrese de que ya está en el directorio Java/jdk*/bin en una ventana de comando o terminal.

Luego usa Android como contraseña.

A veces los recursos web pueden ser engañosos. Estos son los que trabajan:


Haga clic en el icono de Gradle en el panel derecho, luego haga clic en (raíz).

Tareas> android> SignatureReport

Luego se ejecutará el script Gradle y verá sus claves.


Hice de esta manera:

Paso 1: ve a esta carpeta

On Mac: /Users/<username>/.android/ On Windows: C:/Documents and Settings/<username>/.android/ On Linux: ~/.android/

Paso 2: ejecuta esta línea de comando:

keytool -list -v -keystore debug.keystore -storepass android

Verá la clave SHA-1.


La forma más fácil de obtener la huella digital es cambiar de la aplicación al informe firmado haciendo clic en el menú desplegable y haga clic en compilar.

Luego podrá ver la huella digital sha1 en el panel inferior donde verá el informe de depuración y el seguimiento de la pila. Nota: recuerde volver a la aplicación cuando desee ejecutarla en un dispositivo o un emulador.


La mejor solución para generar una clave SHA-1 para Android es de Android Studio .

Haga clic en Gradle en el extremo derecho:

Haga clic en el icono de actualización y verá el nombre de la aplicación:

Haga clic en Tareas -> Informe -> Informe de firma :

Encuentra la clave SHA-1 en la parte inferior de la consola:


La ruta del almacén de claves está entre comillas dobles. Esta funcionando bien

keytool -list -v -keystore "C:/Users/App innovation/.android/debug.keystore" -alias androiddebugkey -storepass android -keypass android


Mi problema es el mismo, ya que también cambié mi proyecto de Google Maps de Eclipse a Android Studio . He resuelto mi problema siguiendo esto:

Vaya a su directorio bin de Java mediante el comando:

C:/Program Files/Java/jdk1.7.0_71/bin>

Ahora escriba el siguiente comando en su ventana de comandos (CMD.EXE):

keytool -list -v -keystore c:/users/your_user_name/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android

Ejemplo:

keytool -list -v -keystore c:/users/James/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android

O simplemente puede escribir esto en cmd si no conoce el nombre de usuario:

keytool -list -v -keystore "%USERPROFILE%/.android/debug.keystore" -alias androiddebugkey -storepass android -keypass android

Y obtendrás el SHA1.

Luego creé una nueva clave de https://code.google.com/apis/console debido a que se cambió el nombre de mi paquete y luego uso esta clave en mi aplicación. Funciona bien.

Asegúrese de estar en la carpeta BIN de jdkX.X.X_XX (mi nombre de carpeta es jdk1.7.0_71) , o si no sabe qué nombre de carpeta tiene, búsquelo abriendo la carpeta Java, y verá cuál es el nombre de la carpeta, pero debe estar en su carpeta BIN y luego ejecutar este comando. Hoy obtuve mi valor SHA1 en una ventana de comando cmd mediante el procedimiento anterior.

INSTANTÁNEA:


Para Windows 10 , desde el terminal Android Studio :

keytool -exportcert -alias androiddebugkey -keystore %USER_PROFILE%"/.android/debug.keystore -list -v

Nota: Para el debug.keystore , la contraseña es "android". El almacén de claves de depuración generalmente se encuentra en "%USER_PROFILE%"/.android/debug.keystore .


Para Mac, esto funcionó perfectamente:

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android


Para obtener SHA1 para un almacén de claves de producción:

  1. Construir -> Generar APK firmado ...

  2. Crea un almacén de claves con contraseña y sigue los pasos

  3. Vaya a su Mac / Biblioteca / Java / JavaVirtualMachines / jdk1.8.0_20.jdk / Contenidos / Inicio / bin y arrastre la carpeta bin al terminal después del comando cd para apuntarlo para que pueda usar la herramienta keytool. Entonces, en la terminal, escriba cd (arrastre el contenedor aquí) y luego presione Intro.

  4. Luego, copie y pegue esto en la terminal:

    keytool -exportcert -alias Your_keystore_AliasName -keystore /Users/Home/Development/AndroidStudioProjects/YoutubeApp/app/YoutubeApp_keystore.jks -list -v

    Borre mi ruta e ir a donde almacenó su almacén de claves y arrastre su piedra angular y suéltelo después de -keystore en la línea de comando para que se cree la ruta.

    Además, borre Your_keystore_AliaseName para poner el nombre de clave alias que utilizó cuando lo creó.

  5. Presione Entrar e ingrese la contraseña :)

  6. Cuando ingresa la contraseña, el terminal no mostrará que recibe entradas del teclado, pero en realidad lo hace, así que ingrese la contraseña y presione Entrar incluso si no ve que la contraseña está escrita.


Puede usar el siguiente comando y cambiar AJAY SUNDRIYAL con el nombre de su sistema. Esto es solo para su debug.keystore. Esto funcionará para usted.

C:/Program Files/Java/jdk1.8.0_91/bin>keytool -list -v -keystore "c:/users/AJAY SUNDRIYAL/.android/debug.keystore" -alias androiddebugkey -storepass android -keypass android


Quiero agregar una cosa con la respuesta dada por Softcoder . He visto que algunas personas no podían dar su ruta debug.keystore correctamente en la command line . Ven que están haciendo el proceso exacto aceptado anteriormente, pero no está funcionando. En ese punto, intente arrastrar el debug.keystore y soltarlo en la línea de comando. Ayudará si la respuesta aceptada no funciona para usted. Realiza el proceso completo sin dudarlo. Fue una buena respuesta.


Si está utilizando Android Studio, puede obtener la huella digital del certificado SHA-1 y MD5 (depurar, liberar ... ¡ todos los tipos de compilación !) Rápidamente a través de Gradle Tasks :

firmaReporte

Los certificados SHA-1 y MD5 se muestran en los registros de mensajes .

El complemento de Android (configurado en la aplicación Gradle) crea un modo de depuración por defecto.

com.android.application

Ruta del archivo al almacén de claves:

HOME/.android/debug.keystore

Recomiendo adjuntar debug.keystore a build.gradle . Para hacer esto, coloque un archivo, debug.keystore , en una carpeta de la aplicación y luego agregue SigningConfigs en la aplicación Gradle :

apply plugin: ''com.android.application'' android { ................ signingConfigs { debug { storeFile file("../app/debug.keystore") storePassword "android" keyAlias "androiddebugkey" keyPassword "android" } release { storeFile file("../app/debug.keystore") storePassword "android" keyAlias "androiddebugkey" keyPassword "android" } } ........ }

Extra: si desea crear para el lanzamiento, coloque un archivo, release.keystore , en una carpeta de la aplicación. (Este ejemplo usa el mismo debug.keystore ).



Si tienes Android Studio, entonces es muy muy simple. Simplemente cree un MapActivity usando Android Studio y luego de crearlo ingrese a google_maps_api.xml. Allí habrá un enlace dado en los comentarios. Si lo pega en su navegador, le pedirá algunos detalles para completar y luego se generará su API. No hay necesidad de usar keytool y todo.

Captura de pantalla:


Use las instrucciones del Administrador de API usando keytool:

Obtenga el nombre del paquete de su archivo AndroidManifest.xml. Luego use el siguiente comando para obtener la huella digital:

keytool -list -v -keystore mystore.keystore


Use un comando simple:

keytool -exportcert -keystore ruta-a-debug-or-production-keystore -list -v

y obtendrá la clave SHA1.


Utilicé directamente el siguiente comando desde mi Mac usando el terminal. Tengo el dedo SHA1. Este es el comando:

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android


Voy con la respuesta de @Hiren Patel pero cambio ligeramente en Android Studio 2.2


Maneras más fáciles que nunca:

Actualización agregada para Android Studio V 2.2 en el último paso

Hay dos maneras de hacer esto.

1. Manera más rápida :

  1. Abra Android Studio
  2. Abre tu proyecto
  3. Haga clic en Gradle (desde el panel lateral derecho, verá la barra de Gradle )
  4. Haga clic en Actualizar (haga clic en Actualizar desde la barra de Gradle , verá la lista de secuencias de comandos de Gradle de su proyecto)
  5. Haga clic en Su proyecto ( Lista de formularios de nombre de proyecto (raíz))
  6. Haga clic en Tareas
  7. Haga clic en Android
  8. Haga doble clic en signatureReport (obtendrá SHA1 y MD5 en la barra de ejecución (a veces estará en la consola Gradle))
  9. Seleccione el módulo de la aplicación del menú desplegable de selección de módulos para ejecutar o depurar su aplicación

Mira la captura de pantalla a continuación:

2. Trabajar con la actividad de Google Maps :

  1. Abra Android Studio
  2. Abre tu proyecto
  3. Haga clic en el menú Archivo -> Seleccionar nuevo -> Haga clic en Google -> Seleccionar actividad de Google Maps
  4. Aparecería un cuadro de diálogo -> Haga clic en Finalizar
  5. Android Studio generaría automáticamente un archivo XML llamado google_maps_api.xml
  6. Obtendría la clave SHA1 de depuración aquí (en la línea número 10 del archivo XML)

Ver captura de pantalla a continuación:

Actualización de Android Studio V 2.2

Hay un problema con la ejecución .

Solución:

  • Haga clic en Alternar ejecución de tareas / modo de texto en la barra Ejecutar

Ver captura de pantalla a continuación:

Hecho.


Para Linux y Mac

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android


Simple, llame a estos métodos en su pantalla de bienvenida: hash () y getCertificateSHA1Fingerprint (), y luego las teclas serían visibles en el registro

private void hash() { PackageInfo info; try { info = getPackageManager().getPackageInfo( this.getPackageName(), PackageManager.GET_SIGNATURES); for (android.content.pm.Signature signature : info.signatures) { MessageDigest md; md = MessageDigest.getInstance("SHA"); md.update(signature.toByteArray()); Log.e("sagar sha key", md.toString()); String something = new String(Base64.encode(md.digest(), 0)); Log.e("sagar Hash key", something); System.out.println("Hash key" + something); } } catch (PackageManager.NameNotFoundException e1) { Log.e("name not found", e1.toString()); } catch (NoSuchAlgorithmException e) { Log.e("no such an algorithm", e.toString()); } catch (Exception e) { Log.e("exception", e.toString()); } } private void getCertificateSHA1Fingerprint() { PackageManager pm = this.getPackageManager(); String packageName = this.getPackageName(); int flags = PackageManager.GET_SIGNATURES; PackageInfo packageInfo = null; try { packageInfo = pm.getPackageInfo(packageName, flags); } catch (PackageManager.NameNotFoundException e) { e.printStackTrace(); } Signature[] signatures = packageInfo.signatures; byte[] cert = signatures[0].toByteArray(); InputStream input = new ByteArrayInputStream(cert); CertificateFactory cf = null; try { cf = CertificateFactory.getInstance("X509"); } catch (CertificateException e) { e.printStackTrace(); } X509Certificate c = null; try { c = (X509Certificate) cf.generateCertificate(input); } catch (CertificateException e) { e.printStackTrace(); } String hexString = ""; try { MessageDigest md = MessageDigest.getInstance("SHA1"); byte[] publicKey = md.digest(c.getEncoded()); Log.e("sagar SHA",byte2HexFormatted(publicKey)); } catch (NoSuchAlgorithmException e1) { e1.printStackTrace(); } catch (CertificateEncodingException e) { e.printStackTrace(); } } public static String byte2HexFormatted(byte[] arr) { StringBuilder str = new StringBuilder(arr.length * 2); for (int i = 0; i < arr.length; i++) { String h = Integer.toHexString(arr[i]); int l = h.length(); if (l == 1) h = "0" + h; if (l > 2) h = h.substring(l - 2, l); str.append(h.toUpperCase()); if (i < (arr.length - 1)) str.append('':''); } return str.toString(); }

Gracias.


[Actualizado 2017]

Paso 1: en la parte superior derecha de Android Studio, haga clic en la opción Gradle.

Paso 2:

- Haga clic en Actualizar (haga clic en Actualizar desde la barra de Gradle, verá la lista de secuencias de comandos de Gradle de su proyecto)

- Haga clic en Su proyecto (Lista de formularios de nombre de proyecto (raíz))

- Haga clic en Tareas

- Haz clic en Android

- Haga doble clic en signatureReport (obtendrá SHA1 y MD5 en Gradle Console / Run Bar)

Paso 3: haz clic en la opción de la consola Gradle que está en la parte inferior de Android Studio para ver tu clave SHA1.

Paso 4: Ahora tienes la clave SHA pero no puedes ejecutar tu proyecto. Es por eso que cambia tu configuración al modo de aplicación. Ver imagen a continuación.

Me gusta esto.

Paso 5: ¡¡Feliz codificación !!


  • Vaya a Archivo> Estructura del proyecto Seleccione app o mobile le haya dado el nombre de Modules

  • Elija la pestaña Signing .

  • Puede agregar un certificado haciendo clic en el botón + .