Saltar al contenido

Introducción de la integración de Firebase

Esta guía te guiará a través de la configuración de la autenticación de Firebase con el plugin de inicio de sesión social Capacitor. Esta integración te permite utilizar proveedores de inicio de sesión sociales nativos (Google, Apple, Facebook, Twitter) en plataformas móviles mientras aprovechas la autenticación de Firebase para la autenticación en el backend y Firestore para el almacenamiento de datos.

  • Cómo configurar la autenticación de Firebase
  • Cómo integrar el plugin de inicio de sesión social Capacitor con la autenticación de Firebase
  • Configuración específica de plataforma para Android, iOS y Web

Antes de empezar, asegúrese de tener:

  1. Un proyecto de Firebase

    • Crear un proyecto en Firebase Console
    • Habilitar la autenticación (Correo electrónico/Contraseña y Inicio de sesión con Google)
    • Obtener sus credenciales de configuración de Firebase
  2. Firebase JS SDK

    • Instale Firebase en su proyecto:
      Ventana de terminal
      npm install firebase
  3. Un proyecto de Capacitor

    • Una aplicación existente de Capacitor
    • Capacitor Social Login plugin installed:
      Ventana de terminal
      npm install @capgo/capacitor-social-login
      npx cap sync

Está disponible en el repositorio una aplicación de ejemplo completa y funcional:

Code Repositorio: Puede encontrar el repositorio code aquí

La aplicación de ejemplo demuestra:

  • Autenticación de correo electrónico/contrasena con Firebase
  • Integración de inicio de sesión de Google (Android, iOS y Web)
  • Un almacén de claves de valor simple utilizando colecciones de Firestore de Firebase
  • Almacenamiento de datos específicos del usuario en subcolecciones de Firestore

Una palabra sobre el uso del Firebase SDK en Capacitor

Sección titulada “Una palabra sobre el uso del Firebase SDK en Capacitor”

Al utilizar el Firebase JS SDK en Capacitor, debes tener en cuenta que al utilizar los métodos de autenticación, debes inicializar la instancia de Firebase Auth de manera ligeramente diferente.

En la plataforma web, utilizarías la getAuth función para obtener la instancia de Firebase Auth.

import { initializeApp } from 'firebase/app';
import { getAuth } from 'firebase/auth';
const app = initializeApp(firebaseConfig);
const auth = getAuth(app);

Desafortunadamente, en Capacitor, esto no funciona y causa que Firebase auth se quede colgado. Como se menciona en este post de blog, debes utilizar la initializeAuth función para inicializar la instancia de Firebase Auth. Esto se ve así:

import { initializeApp } from 'firebase/app';
import { initializeAuth } from 'firebase/auth';
const app = initializeApp(firebaseConfig);
function whichAuth() {
let auth;
if (Capacitor.isNativePlatform()) {
auth = initializeAuth(app, {
persistence: indexedDBLocalPersistence,
});
} else {
auth = getAuth(app);
}
return auth;
}
export const auth = whichAuth();

Continúa con las guías de configuración:

Sigue adelante desde la introducción a la integración de Firebase

Sigue adelante desde la Introducción a la Integración con Firebase

Si estás utilizando Introducción a la Integración con Firebase para planificar la autenticación y los flujos de cuenta, conecta con Usando @capgo/capacitor-login-social para la capacidad nativa en Usando @capgo/capacitor-login-social Usando @capgo/capacitor-login-social para el detalle de implementación en @capgo/capacitor-login-social Usando @capgo/capacitor-clave-privada para el detalle de implementación en @capgo/capacitor-clave-privada Usando @capgo/capacitor-biometría-nativa para el detalle de implementación en @capgo/capacitor-biometría-nativa Autenticación en dos factores para el detalle de implementación en Autenticación en dos factores.