Solucionar problemas

A continuación, se describen algunos problemas comunes vinculados al inicio de sesión con Facebook para Android y la manera de solucionarlos.

Se produce un error en el cuadro de diálogo de inicio de sesión.

Obtengo los permisos del cuadro de diálogo de inicio de sesión nativo, pero no se autentica a la persona. Se muestra un error de excepción de Logcat como el siguiente:

...W/fb4a:fb:OrcaServiceQueue(504): com.facebook.orca.protocol.base.ApiException: remote_app_id does not match stored id 

O bien

Veo un cuadro de diálogo de inicio de sesión no nativo que incluye un error como el siguiente:

...App is Misconfigured for facebook login... 

Si tienes problemas con el cuadro de diálogo de inicio de sesión, puedes intentar lo siguiente:

M hash de clave no es válido.

Si tienes problemas con tu hash de clave, puedes intentar lo siguiente:

  • Cuando agregues un hash de clave nuevo en el panel de apps, asegúrate de seleccionar Guardar cambios.
  • La contraseña que ingresaste quizá sea incorrecta. La contraseña predeterminada del almacén de claves es "android".
  • Copia y pega el hash de clave que enviaste a Facebook en el panel de apps y selecciona Guardar cambios. Además, realiza este cambio en onCreate() en relación con tu actividad principal:
    @Override
    
    public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
                    
         try {
             PackageInfo info = getPackageManager().getPackageInfo(
                               "{your-package-name}",                  //Insert your own 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) {
                      
              } catch (NoSuchAlgorithmException e) {
                      
              }
               ...

Se produce un error de Keytool.

  • Si se muestra el error Command not found, agrega la ruta al PATH global o ve a la carpeta para ejecutar este comando:
    En Windows: C:\Program Files (x86)\Java\jdk1.6.0\bin
    En MAC: /usr/bin
  • Si Keytool no encuentra la ubicación de debug.keystore, comprueba que la ruta sea correcta. Keytool siempre solicita la contraseña si tiene la dirección correcta.