El hash de la clave de Facebook no coincide con ninguna clave almacenada.

Realmente estoy teniendo problemas con la clave hash de Facebook. Lo generé en mi Eclipse .. prueba:

Luego fui a https://developers.facebook.com/ y registré una nueva aplicación.

Y finalmente he establecido mi hashkey en la configuración de los desarrolladores de Facebook:

Pero no hay nada que hacer. Sigo recibiendo el mismo registro de errores: “Key hash B5dWUEYfZJL / ……….. jyA = no coincide con ningún hash de claves almacenadas”

¿Alguien sabe lo que hice mal o cómo puedo solucionar este problema? Si utilicé la identificación y el nombre de la HelloFacebookSample dentro de mi propia aplicación, todo funciona. Por lo tanto, TIENE que ver con la clave hash, id o nombre que he establecido en algún lugar muy probablemente ..

Gracias, Yenthe

Después de horas de intentar, finalmente encontré una solución.

  1. Eliminar cualquier aplicación en el sitio web de Facebook (developers.facebook.com)
  2. Elimine el archivo debug.keystore en C:\Users\yourUserName\.android
  3. Genera una nueva clave (al ejecutar tu aplicación de nuevo)
  4. Crea una nueva aplicación en developers.facebook.com y agrega la nueva clave hash
  5. Vuelve a ejecutar tu aplicación
  6. ¡Succes!

Si su inicio de sesión funciona sin instalar la aplicación de Facebook y no funciona cuando la aplicación de Facebook está instalada debido a un error “la clave hash no coincide”, siga los siguientes pasos

1) Inicie su aplicación e intente iniciar sesión con Facebook. Se abrirá un cuadro de diálogo y le dirá: “la clave no se ha encontrado en la consola del desarrollador de Facebook y también muestra la tecla hash”.

2) Anote esa tecla hash.

3) Póngalo en su consola de desarrollador de Facebook donde primero generó su clave de API y elimine la clave de hash con nuevo y guarde. Ahora terminaste. Cualquiera que descargue su aplicación, publicada con keystore usado anteriormente, puede iniciar sesión en Facebook.

Encontré un problema similar. La solución es sorprendentemente simple.

El mensaje de error se ve así:

 07-05 ...... Invalid key hash. The key hash sL1***************VY= does not match any stored key hashes. Configure your app key hashes at http://developers.facebook.com/apps/150*******778 07-05 ...... at com.facebook.login.LoginManager.onActivityResult(LoginManager.java:191) 

Simplemente inicie sesión en https://developers.facebook.com , seleccione la pestaña “Configuración” y agregue la clave hash “sL1 *************** VY =” a la lista de guardados Hashes clave en el panel de Android.

Enfrenté el mismo problema durante el desarrollo y necesitaba obtener la clave hash para probar compartir en Facebook, y mientras resolvía esto, tuve varios problemas

1- El comando facebook proporcionar para obtener la clave hash utilizando el comando openSSL no me dio el hash correcto que obtuve extrayendo la firma de la información del paquete con el código. obtener el hash de la segunda manera era correcto.

2- Por alguna razón, en la documentación te dicen que vayas a la configuración del desarrollador y agregas la clave hash para ‘Sample App’ allí, pensé que cada hashkey para un desarrollador debería estar allí, y ese fue mi error, cada aplicación tiene su propio campo de claves hash para agregar, ve a tu aplicación / settings / android.

enter image description here

bueno, eso fue todo … y para los registros usé openssl-0.9.8k_X64 en un Windows 7 x64 y solo genera un hash incorrecto, no sé por qué

Usé este código para obtener el hash:

 private void printKeyHash() { // Add code to print out the key hash try { PackageInfo info = getPackageManager().getPackageInfo("YOUR PACKAGE NAME", PackageManager.GET_SIGNATURES); for (Signature signature : info.signatures) { MessageDigest md = MessageDigest.getInstance("SHA"); md.update(signature.toByteArray()); Log.d("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT)); } } catch (NameNotFoundException e) { Log.e("KeyHash:", e.toString()); } catch (NoSuchAlgorithmException e) { Log.e("KeyHash:", e.toString()); } } 

pero tenga cuidado de que esto no imprima también en los registros el keyhash correcto, al menos en mi dispositivo y máquina, cuando lo depuro, en un reloj muestra el hash correcto justo antes de imprimir los registros, pero en los registros muestra otro hash y el primero fue el correcto.

de todos modos también puede usar un comando o un eclipse para ver la secuencia hexadecimal de SHA para su clave y convertirla a la base 64 en línea, hay sitios web que pueden ayudar a http://tomeko.net/online_tools/hex_to_base64.php?lang=en

Buena suerte

Agregar claves SHA1 desde Eclipse / keytool me ayudó solo al crear la aplicación en FB, luego de reconstruir siempre obtendría el error de OP.

Lo que resolvió mi problema fue agregar la clave en el mensaje de error a la configuración del tablero de Facebook.

He tenido este problema durante dos meses. Mis claves hashes han estado hasta 9. Hoy finalmente encontré la solución simple:

PASO 1:

Instale el sdk de Facebook que descargó de la página del desarrollador de Facebook en su teléfono. No instale la aplicación normal de Facebook. Asegúrate de que puedes iniciar sesión en Facebook. Luego cierre la sesión.

PASO 2:

Exporte su aplicación con su clave de lanzamiento final como una aplicación, como lo haría al subirla a la tienda de juegos.

PASO 3:

Coloque el archivo Apk en su teléfono mediante un cable usb o un dispositivo USB.

ETAPA 4:

Instale su aplicación, utilizando un administrador de archivos: por ejemplo, https://play.google.com/store/apps/details?id=com.rhmsoft.fm

PASO 5:

Inicie su aplicación e intente iniciar sesión con Facebook. Se abrirá un cuadro de diálogo y le dirá: “la clave no se ha encontrado en la consola del desarrollador de Facebook”.

PASO 6:

Escriba la clave.

PASO 7:

Póngalo en su consola de desarrollador de Facebook y guárdelo. Ahora terminaste. Cualquiera que descargue su aplicación, publicada con keystore usado anteriormente, puede iniciar sesión en Facebook.

Disfrutar

Se ve loco, pero funciona

Realmente problema debido a que la cuenta privada de Facebook obtuvo esta aplicación y la clave hash de esta cuenta no es comparable

Pero no debes enfrentar este error con el usuario real. Pero no estoy seguro

Finalmente, sigue el siguiente paso:

  1. Vaya a su cuenta privada de Facebook que intenta iniciar sesión
  2. A continuación, haz clic en Más en el directorio de aplicaciones

enter image description here

  1. Haga clic en Configuración

enter image description here

Y luego haz clic en cruzar

enter image description here

Y ahora puedes iniciar sesión con Facebook. Pero la próxima vez que cierres la sesión e intentarás volver a iniciar sesión, te enfrentarás al mismo problema …

También es extraño …

Pero no creo que Facebook no sepa sobre esto …

  1. Verifica tu valor clave de hash.
  2. Desinstale la aplicación de Facebook de su teléfono.
  3. Luego intente nuevamente usando SDK.

Esto resolvió mi problema.

Este es un caso que posiblemente podría haber ocurrido y lo que resolvió mi error:

En https://developers.facebook.com/quickstarts después de ejecutar

OSX / Linux:

 keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64 

Windows:

 keytool -exportcert -alias androiddebugkey -keystore %HOMEPATH%\.android\debug.keystore | openssl sha1 -binary | openssl base64 

Cuando se Enter keystore password: es posible que haya escrito accidentalmente una contraseña incorrecta , la contraseña predeterminada es ” android “. Escribir cualquier otra contraseña le dará una clave de hash diferente / incorrecta. Pegue la clave hash correcta en el campo Key Hashes en la página de su aplicación

Esto resolvió mi problema, espero que esto ayude a quien haya cometido este error en particular que yo hice

Tengo el mismo problema. Descubrí que usé el hashkey equivocado. keytool imprimió hashkey incorrecto porque ejecuto el comando con un alias incorrecto.
Por favor revisa tu comando nuevamente. Resolverá tu problema

 keytool -exportcert -alias "test fb sdk" -storepass android -keypass android -keystore "C:\keystore.keystore" | openssl sha1 -binary | openssl base64 

El uso del almacén de claves de Debug, incluido el depurador.keystore de Android presente en la carpeta .android, generaba un problema extraño; el inicio de sesión con el botón de inicio de sesión de Facebook en la aplicación de Android se realizará perfectamente como se desee por primera vez. Pero cada vez que me desconecté e intenté iniciar sesión, arrojaría un error diciendo: Esta aplicación no tiene hash de claves de Android configuradas. Vaya a http: // ….

Creando una Keystore usando el comando keytool (keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -sigalg SHA1withRSA -keysize 2048 -validity 10000) y colocando este keystore en la carpeta superior de mis proyectos y haciendo un La siguiente entrada en el archivo build.gradle de los proyectos resolvió el problema:

  signingConfigs { release { storeFile file("my-release-key.keystore") storePassword "passpass" keyAlias "alias_name" keyPassword "passpass" } } 

Tenga en cuenta que siempre utiliza el siguiente método dentro deCreate () de su actividad en Android para obtener el valor clave de hash (para registrarse en el sitio developer.facebook.com de su aplicación) en lugar de usar la línea de comando para generar valor hash como línea de comando en algunos cased pueden sacar un hash de clave incorrecta:

  public void showHashKey(Context context) { try { PackageInfo info = context.getPackageManager().getPackageInfo("com.superreceptionist", PackageManager.GET_SIGNATURES); for (android.content.pm.Signature signature : info.signatures) { MessageDigest md = MessageDigest.getInstance("SHA"); md.update(signature.toByteArray()); String sign=Base64.encodeToString(md.digest(), Base64.DEFAULT); Log.e("KeyHash:", sign); // Toast.makeText(getApplicationContext(),sign, Toast.LENGTH_LONG).show(); } Log.d("KeyHash:", "****------------***"); } catch (PackageManager.NameNotFoundException e) { e.printStackTrace(); } catch (NoSuchAlgorithmException e) { e.printStackTrace(); } } 

Tengo un problema similar. Después de firmar y publicar mi aplicación en Google PlayStore, parece que Hash ha cambiado. Agregué el nuevo hash (como se menciona) en el mensaje de Facebook a Key Hashes en mi aplicación en developers.facebook.com/app//settings. Ahora funciona de nuevo.

“Habilitado el inicio de sesión único para su aplicación” es por eso que solo funciona una vez. por favor diríjase a developer.facebook y revise la configuración. Trabaja para mí

Compruebe su google-services.json. Puede ser que sea diferente. Descargue su última google-services.json y luego ejecute la aplicación. Espero eso ayude.