Aller directement au contenu

Introduction à l'intégration Firebase

Ce tutoriel vous guidera dans la configuration de l'authentification Firebase avec le plugin de connexion sociale Capacitor. Cette intégration vous permet d'utiliser les fournisseurs de connexion sociale natifs (Google, Apple, Facebook, Twitter) sur les plateformes mobiles tout en exploitant l'authentification Firebase pour l'authentification côté serveur et Firestore pour le stockage de données.

  • Comment configurer l'authentification Firebase
  • Comment intégrer le plugin de connexion sociale Capacitor avec l'authentification Firebase
  • Paramètres spécifiques à la plateforme pour Android, iOS et Web

Avant de commencer, assurez-vous d'avoir :

  1. Un projet Firebase

    • Créer un projet sur Console Firebase
    • Activer l'authentification (Courriel/ Mot de passe et Google Sign-In)
    • Obtenir vos informations de configuration Firebase
  2. Firebase JS SDK

    • Installer Firebase dans votre projet :
      Fenêtre de terminal
      npm install firebase
  3. Un projet Capacitor

    • Une application Capacitor existante
    • Capacitor Connexion sociale plugin installé :
      Fenêtre de terminal
      npm install @capgo/capacitor-social-login
      npx cap sync

Un exemple de travail complet est disponible dans le dépôt :

Code Dépôt: Vous pouvez trouver le dépôt code ici

L'application d'exemple démontre :

  • Authentification par courriel/ mot de passe avec Firebase
  • Intégration de l'inscription Google (Android, iOS et Web)
  • Un simple stockage de clés-valeurs en utilisant les collections Firestore de Firebase
  • Stockage de données spécifiques à l'utilisateur dans les souscollections Firestore

Un mot sur l'utilisation de la Firebase SDK sur Capacitor

Section intitulée « Un mot sur l'utilisation de la Firebase SDK sur Capacitor »

Lors de l'utilisation de la Firebase JS SDK sur Capacitor, il est important de prendre en compte que lors de l'utilisation des méthodes d'authentification, il faut initialiser l'instance Firebase Auth de manière légèrement différente.

Sur la plateforme web, vous utiliseriez la getAuth fonction pour obtenir l'instance Firebase Auth.

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

Malheureusement, sur Capacitor, cela ne fonctionne pas et provoque un blocage de l'authentification Firebase. Comme indiqué dans ce billet de blog, il faut utiliser la initializeAuth fonction pour initialiser l'instance Firebase Auth. Cela ressemble à cela:

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();

Continuez avec les guides de configuration :

Si vous utilisez l'introduction à l'intégration Firebase pour planifier l'authentification et les flux de compte, connectez-le avec En utilisant @capgo/capacitor-connexion-social pour la capacité native dans En utilisant @capgo/capacitor-connexion-social, @capgo/capacitor-connexion-social pour le détail d'implémentation dans @capgo/capacitor-connexion-social, @capgo/capacitor-passkey pour le détail d'implémentation dans @capgo/capacitor-passkey, @capgo/capacitor-biométrie-native pour le détail d'implémentation dans @capgo/capacitor-biométrie-native, et Authentification à deux facteurs pour le détail d'implémentation dans Authentification à deux facteurs.