Una parte crucial de muchas aplicaciones es la capacidad de crear cuentas de usuario y autenticar a los usuarios existentes. Firebase Authentication proporciona una solución completa y segura para esto y es fácil de integrar con Flutter. En este capítulo, exploraremos cómo implementar la autenticación de Firebase en una aplicación Flutter.

Configuración de Firebase

Antes de comenzar, necesitamos configurar Firebase. Primero, crea un nuevo proyecto de Firebase y sigue las instrucciones para agregar Firebase a tu aplicación Flutter. Asegúrese de habilitar el método de autenticación de correo electrónico y contraseña en la configuración de autenticación de Firebase.

Instalación del paquete Flutter

Para usar Firebase Authentication, necesitamos instalar el paquete firebase_auth. Agregue la siguiente línea a su archivo pubspec.yaml y ejecute 'flutter packages get' en la terminal:

dependencias:
  firebase_auth: ^0.18.4

Creación de la interfaz de usuario

Creemos una interfaz de usuario sencilla con dos campos de texto para correo electrónico y contraseña y dos botones para iniciar sesión y registrarse. Para simplificar las cosas, no nos ocuparemos de la validación de formularios en este ejemplo.

Campo de texto(
  decoración: EntradaDecoración(
    labelText: 'Correo electrónico',
  ),
  onChanged: (valor) {
    correo electrónico = valor;
  },
),
Campo de texto(
  decoración: EntradaDecoración(
    labelText: 'Contraseña',
  ),
  texto oscuro: verdadero,
  onChanged: (valor) {
    contraseña = valor;
  },
),
Botón elevado(
  niño: Texto('Iniciar sesión'),
  onPressed: iniciar sesión,
),
Botón elevado(
  niño: Texto('Registrarse'),
  onPressed: registrarse,
),

Autenticación de Firebase

Ahora implementemos las funciones de inicio de sesión y registro. Primero, necesitamos crear una nueva instancia de FirebaseAuth:

autenticación final de FirebaseAuth = FirebaseAuth.instance;

La función de inicio de sesión intenta autenticar a un usuario con el correo electrónico y la contraseña proporcionados. Si la autenticación se realiza correctamente, el usuario inicia sesión automáticamente en la aplicación y puede acceder a funciones protegidas.

Futuro signIn() asíncrono {
  intentar {
    UserCredential userCredential = espera auth.signInWithEmailAndPassword(
      correo electrónico: correo electrónico,
      contraseña: contraseña,
    );
  } en FirebaseAuthException captura (e) {
    if (e.code == 'usuario no encontrado') {
      print('No se encontró ningún usuario para ese correo electrónico.');
    } else if (e.code == 'contraseña incorrecta') {
      print('Se proporcionó una contraseña incorrecta para ese usuario.');
    }
  }
}

La función de registro crea una nueva cuenta de usuario con el correo electrónico y la contraseña proporcionados. Si la creación de la cuenta se realiza correctamente, el usuario iniciará sesión automáticamente en la aplicación.

Futuro registro() asíncrono {
  intentar {
    UserCredential userCredential = espera auth.createUserWithEmailAndPassword(
      correo electrónico: correo electrónico,
      contraseña: contraseña,
    );
  } en FirebaseAuthException captura (e) {
    if (e.code == 'contraseña débil') {
      print('La contraseña proporcionada es demasiado débil.');
    } else if (e.code == 'correo electrónico-ya-en-uso') {
      print('La cuenta ya existe para ese correo electrónico.');
    }
  } atrapar (e) {
    imprimir(e);
  }
}

Conclusión

Con esto, deberías tener un conocimiento básico de cómo implementar la autenticación de Firebase en una aplicación Flutter. Hay muchas otras funciones que ofrece Firebase Authentication, como autenticación por teléfono, inicio de sesión de Google, inicio de sesión de Facebook y más. Esperamos que este capítulo le haya proporcionado una base sólida para que pueda explorar estas funciones por su cuenta.

Ahora responde el ejercicio sobre el contenido:

¿Cuál es la función de la autenticación de Firebase en una aplicación Flutter como se describe en el texto?

¡Tienes razón! Felicitaciones, ahora pasa a la página siguiente.

¡Tú error! Inténtalo de nuevo.

Imagen del artículo Autenticación de Firebase en Flutter: Introducción a Firebase

Siguiente página del libro electrónico gratuito:

208Autenticación de Firebase en Flutter: Introducción a Firebase

3 minutos

¡Obtén tu certificado para este curso gratis! descargando la aplicación Cursa y leyendo el libro electrónico allí. ¡Disponible en Google Play o App Store!

Disponible en Google Play Disponible en App Store

+ 6,5 millones
estudiantes

Certificado gratuito y
válido con código QR

48 mil ejercicios
gratis

Calificación de 4.8/5
en tiendas de aplicaciones

Cursos gratuitos de
vídeo, audio y texto.