es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

acción. Prueba de integración de Flutter firebase-auth en la que se produce un error en el inicio de sesión con credenciales: El llamante no tiene permiso para ejecutar la acción especificada.

Estoy intentando ejecutar pruebas de integración en mi aplicación Flutter. Uno de los flujos que quiero probar es el flujo de inicio de sesión. Hay autenticación de número de teléfono Firebase en la aplicación.
Cuando intento llamar a signInWithCredential para iniciar sesión con el número de teléfono de prueba y el código de verificación de prueba, obtengo un error:

 

I/flutter (24151): Se arrojó la siguiente FirebaseException al ejecutar una prueba:
I/flutter (24151): [cloud_firestore/permission-denied] El llamante no tiene permiso para ejecutar la operación especificada.

Parece que la huella SHA1 configurada en el proyecto Firebase no coincide con la aplicación Flutter driver. Tal vez esté equivocado al respecto.
Mi pregunta es cómo ejecutar una prueba de integración para una aplicación con firebase-auth. Y si tengo razón sobre la SHA1, ¿cómo configurar una configuración de canto para la aplicación Flutter driver?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para ejecutar una prueba de integración para una aplicación con firebase-auth, es necesario asegurarse de que la aplicación de controlador de flutter y el proyecto de Firebase estén configurados correctamente. El mensaje de error indica que el llamante no tiene permiso para ejecutar la operación, lo que sugiere un problema de autenticación.

    Primero, asegúrese de que el proyecto de Firebase esté configurado correctamente y que la huella digital SHA1 de la aplicación de controlador de flutter coincida con la del proyecto de Firebase. Puede comprobar esto ejecutando el siguiente comando:

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

    Esto imprimirá la huella digital SHA1 del certificado de depuración. Asegúrese de que coincida con la huella digital SHA1 del proyecto de Firebase.

    Si las huellas digitales SHA1 coinciden, asegúrese de que la autenticación de Firebase esté configurada correctamente en su aplicación. Puede hacerlo siguiendo la guía de autenticación de Firebase para el proveedor de autenticación que haya elegido.

    Si sigue teniendo problemas, es posible que deba configurar una configuración personalizada de firma para la aplicación de controlador de flutter. Puede hacerlo agregando lo siguiente al archivo build.gradle de su aplicación:

    android {
        signingConfigs {
            config {
                keyAlias 'alias de clave'
                keyPassword 'contraseña de clave'
                storeFile file('ruta/hasta/almacenamiento')
                storePassword 'contraseña de almacenamiento'
            }
        }
    
        buildTypes {
            release {
                signingConfig signingConfigs.config
            }
        }
    }
    

    Esto asegurará que la aplicación esté firmada con el certificado correcto y debería resolver cualquier problema de permisos con la autenticación de Firebase.

Comments are closed.