Generar un hash clave para aplicaciones de Facebook en Android

En https://developers.facebook.com/docs/android/getting-started/facebook-sdk-for-android/ mostramos cómo obtener el hash clave pero no sé qué puedo hacer con "keytool – Exportcert -alias androiddebugkey -keystore% HOMEPATH% .android \ debug.keystore | openssl sha1 -binary | openssl base64 ". En el sitio web hablamos de la utilidad keytool de Java, pero no sé qué es? Por favor, quiero crear mi aplicación de Facebook para Android no sé cómo todo este trabajo. Necesito a alguien que me ayude paso a paso. Gracias por Advance.

Keytool es parte de Java JDK. El comando keytool que mencionó emitirá una representación cifrada en base64, sha1 de su clave de depuración. Su aplicación está firmada con esta clave de depuración cada vez que la compila. Facebook utiliza esta clave para verificar que su computadora compiló la aplicación. Así que en la interfaz de Facebook Administrar la aplicación, se pondría la salida del comando keytool.

Si tiene problemas para ejecutar el comando, lo más probable es que haga con rutas incorrectas. Tratar:

"C:\Program Files\Java\jdk1.6.0_33\bin\keytool.exe" -exportcert -alias androiddebugkey -keystore %HOMEPATH%\.android\debug.keystore | "C:\Users\A\Downloads\openssl-0.9.8h-1-bin\bin\openssl.exe" sha1 -binary | "C:\Users\A\Downloads\openssl-0.9.8h-1-bin\bin\openssl.exe" base64 

Donde cambia las rutas en comillas a las rutas de acceso de openssl.exe y keytool.exe en su computadora. (Puede que tenga que descargar openssl primero)

Siga estos pasos: 1. Establezca ruta en su cmd.

  C:\Program Files\Java\jdk1.7.0_03\bin 
  1. A continuación, descargar openssl-0.9.8k_WIN32. Pegarlo en su carpeta C :.
  2. Utilice el comando siguiente

      C:\Program Files\Java\jdk1.7.0_03\bin\keytool -export -alias myAlias -keystore C:\Users\Admin\.android\debug.keystore | C:\openssl-0.9.8k_WIN32\bin\openssl enc -a -e 

    4.It pedirá password.put PASSWORD = android

  3. Usted conseguirá su hashkey. Para más información, visite: [ http://android-developer-helpdesk.blogspot.com/2014/04/hash-key-generation.html ]

Primero de todo comprobar su sistema que es de 64 bits o 32 bits.

Si es 32 bits entonces da el siguiente comando

 keytool -export -alias myAlias -keystore C:\Users\monue\.android\debug.keystore | C:\openssl\bin\openssl sha1 -binary | C:\openssl\bin\openssl enc -a -e 

Y si es 64 bits entonces da el siguiente comando

 "C:\Program Files\Java\jdk1.6.0_33\bin\keytool.exe" -exportcert -alias androiddebugkey -keystore %HOMEPATH%\.android\debug.keystore | "C:\Users\A\Downloads\openssl-0.9.8h-1-bin\bin\openssl.exe" sha1 -binary | "C:\Users\A\Downloads\openssl-0.9.8h-1-bin\bin\openssl.exe" 

Base64

No importa el ordenador, la forma más sencilla de hacerlo es simplemente descargar (openssl) – ( https://code.google.com/p/openssl-for-windows/downloads/list ) y colocarlo en una nueva carpeta en La unidad c como así …. ejemplo {C: \ openssl}

Ahora el símbolo del sistema debe ser algo como esto cuando se busca la clave de liberación (sólo cambiar las ubicaciones para depurar keystore o viceversa!

Quite todas las comillas antes de pegar en el símbolo del sistema …

Keytool -exportcert -alias "el nombre de su almacén de claves va aquí" -keystore "ubicación donde está su archivo keystore" | C: \ openssl \ bin \ openssl.exe sha1-binario | C: \ openssl \ bin \ openssl.exe base64

Si usted está utilizando a android studio como plataforma de desarrollo de lo que será fácil obtener Key Hash para Facebook.

1: Crea un archivo java MyApplication.java .

2: Pegue el código abajo en él.

 public class MyApplication extends MultiDexApplication { public void onCreate(){ super.onCreate(); PrintKeyHash(); } public void PrintKeyHash(){ try{ PackageInfo info = getPackageManager().getPackageInfo("com.bhunnu.nearveg", PackageManager.GET_SIGNATURES); for (Signature signature: info.signatures){ MessageDigest md = MessageDigest.getInstance("SHA"); md.update(signature.toByteArray()); Log.e("Your System KEYHASH : ", Base64.encodeToString(md.digest(), Base64.DEFAULT)); } }catch (PackageManager.NameNotFoundException e){ }catch (NoSuchAlgorithmException e){ } } @Override protected void attachBaseContext(Context base) { super.attachBaseContext(base); MultiDex.install(this); } } 

3: ahora abra su archivo de manifiesto y en la etiqueta de la aplicación escriba android: name = ". MyApplication".

Lo mismo que abajo en AndroidManifest.xml

  <application android:allowBackup="true" android:icon="@drawable/icon1" android:label="@string/app_name" android:name=".MyApplication.java" android:theme="@style/AppTheme"> 

Si ya utilizas un nombre como android: name = "android.support.multidex.MultiDexApplication" entonces también lo reemplazarás porque he usado extende multidexing en el archivo MyApplication.java.

Usted está utilizando cualquier nombre que también una vez lo reemplaza por MyApplication.java después de llegar a Hash puede utilizar su nombre de archivo anterior.

  • Obtención de error de parámetro android_key no válido, después de iniciar sesión por primera vez en Facebook Android SDK
  • UnknownError: ApiException: El hash de claves **** no coincide ... cuando tengo la aplicación FB instalada
  • Obtener todos los algoritmos MessageDigest puede utilizar?
  • Convertir una cadena en una matriz de bytes y luego volver a la cadena original
  • Generación de hash de claves de liberación en Linux OS (Ubuntu): Android Facebook SDK
  • Cómo obtener un algoritmo de Hashing de archivo rápido para archivos grandes en un dispositivo móvil
  • ¿Qué hace MessageDigest.update (byte )?
  • Facebook pide hashes de clave de Android para la aplicación que todavía está en modo de área de seguridad
  • Android, cálculo del hash SHA-1 desde el archivo, el algoritmo más rápido
  • ¿Qué tipo de hash es el ID de dispositivo de prueba de AdMob?
  • Cómo hash una cadena en Android?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.