Pasar al contenido

Introducción de la Integración de Firebase

GitHub

Esta guía te guiará a través del proceso de 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úrate de tener:

  1. Un Proyecto de Firebase

    • Crea un proyecto en Firebase Console
    • Habilita la Autenticación (Correo electrónico/Contraseña y Inicio de sesión con Google)
    • Obtén tus credenciales de configuración de Firebase
  2. Firebase JS SDK

    • Instala Firebase en tu proyecto:
      Ventana de Terminal
      npm install firebase
  3. Un Proyecto Capacitor

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

Un ejemplo de aplicación completo y funcional está disponible en el repositorio:

Code Repositorio: Puedes encontrar el repositorio code aquí

El ejemplo de aplicación demuestra:

  • Autenticación por correo electrónico/contraseña con Firebase
  • Integración de inicio de sesión de Google (Android, iOS y Web)
  • A un simple almacén de valores utilizando colecciones de Firestore de Firebase
  • Almacenamiento de datos específicos de usuario en subcolecciones de Firestore

Una palabra sobre el uso del SDK de Firebase en Capacitor

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

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

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

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 la autenticación de Firebase se quede colgada. Como se menciona en este artículo de blog, debes utilizar la initializeAuth función para inicializar la instancia de autenticación de Firebase. 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();

Continuar con las guías de configuración:

Continúa desde la introducción de la integración de Firebase

Sección titulada “Continúa desde la introducción de la integración de Firebase”

Si estás utilizando La introducción de la integración de 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 los detalles de implementación en @capgo/capacitor-native-biometric, y Autenticación en dos factores para los detalles de implementación en Autenticación en dos factores.