studio started resultcodes provider_id googleauthprovider firestore auth android firebase facebook-authentication firebase-authentication firebaseui

android - started - firestore ui



FirebaseUI autenticación con Facebook no funciona (2)

Estoy usando FirebaseUI-Authentication . Iniciar sesión con un correo electrónico o una cuenta de Google es exitoso, pero iniciar sesión con Facebook no funciona. No se llama a onActivityResult() después de que se inició la actividad de AuthUI y se intentó iniciar sesión con Facebook. Después de iniciar sesión, la aplicación se atasca en la ventana de carga. logcat genera un registro de FirebaseApp:

Notificar a los oyentes de cambio de estado de fondo.

En el panel de control de la aplicación de Facebook, establezco la URI de redireccionamiento de OAuth válida , como se indica en la guía de base de firmas, y establezco la aplicación pública (¿importa si es pública o está en estado de desarrollo?). En la consola Firebase , habilité el inicio de sesión de Facebook y configuré el ID de la aplicación y el secreto de la aplicación .

This es un video de grabación que muestra lo que sucede después de iniciar sesión en Facebook, en la actividad de inicio de sesión.

¿Por qué no se onActivityResult() ?

Actividad principal:

/** * Use this method to start the FirebaseUI sign in activity. */ public void switchToSignIn() { this.activity.startActivityForResult( AuthUI.getInstance() .createSignInIntentBuilder() .setProviders( AuthUI.EMAIL_PROVIDER, AuthUI.GOOGLE_PROVIDER, AuthUI.FACEBOOK_PROVIDER) .build(), RC_SIGN_IN); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == RC_SIGN_IN) { if (resultCode == this.activity.RESULT_OK) { // user is signed in! Log.d(Constants.TAG_LoginHandler, "Sign in result: RESULT_OK"); logUserInfo(); tryAccessMainFragment(); } else { Log.d(Constants.TAG_LoginHandler, "Sign in result: RESULT_CANCELLED"); // user is not signed in. Maybe just wait for the user to press // "sign in" again, or show a message } } }

build.gradle:

dependencies { compile fileTree(dir: ''libs'', include: [''*.jar'']) testCompile ''junit:junit:4.12'' compile ''com.android.support:appcompat-v7:23.4.0'' compile ''com.android.support:support-v4:23.4.0'' compile ''com.android.support:design:23.4.0'' compile ''com.firebaseui:firebase-ui:0.4.0'' compile ''com.squareup.picasso:picasso:2.5.2'' compile ''de.hdodenhof:circleimageview:1.3.0'' } apply plugin: ''com.google.gms.google-services''


Intente actualizar a la nueva versión de los servicios de Google Play, donde se han solucionado algunos problemas relacionados con la autenticación Firebase. (A pesar de que no han mencionado específicamente con respecto al inicio de sesión de Facebook)

Servicios de Google Play actualizados a 9.0.2 La versión 9.0.2 de los servicios de Google Play ya está disponible. Esta versión soluciona un problema conocido con la autenticación Firebase donde FirebaseAuthApi no está disponible en algunos dispositivos.

https://developers.google.com/android/guides/releases


Si está utilizando FirebaseUI, debe poner esta cadena exacta en strings.xml:

<string name="facebook_application_id" translatable="false">APPID</string>

El APPID se puede encontrar en el panel de control de developers.facebook.com .

Ver firebaseui-auth readme

También asegúrese de agregar el hash de la clave de Android y la URL de la base de datos de OAuth en la aplicación de Facebook.