Passer à la navigation

Configuration de Firebase Google Login sur iOS

GitHub

Cette guide vous aidera à intégrer l'authentification Google avec Firebase Authentication sur iOS. Je suppose que vous avez déjà terminé Configuration générale de Firebase Google.

  1. Allez dans votre vue d'ensemble de projet sur console.cloud.google.com

    Vue d'ensemble du projet Firebase
  2. Cliquez sur le Add app bouton

    Bouton d'ajout d'application Firebase Bouton d'ajout d'application Firebase
  3. Sélectionner iOS

    Ajouter l'application Firebase iOS
  4. Remplir la première partie du formulaire

    1. Remplir le Apple bundle ID
      1. Ouvrir Xcode dans votre application en utilisant npx cap open ios
      2. Double-cliquez sur App Cible d'application dans le navigateur de projet Xcode
      3. Assurez-vous d'être sur Targets -> App Section Cibles dans Xcode avec l'application sélectionnée
      4. Trouvez votre Bundle Identifier Champ Identifiant de Bundle dans les paramètres de projet Xcode
      5. Copiez le Bundle Identifier et collez-le dans le console Firebase Champ d'ID de bundle iOS de l'application Firebase
    2. Cliquez sur le Register app bouton Ajouter l'application Firebase iOS Inscription
  5. Sauter la Download config file step

    Ajouter l'application Firebase iOS Passer S'installer
  6. Sauter cette Add firebase SDK étape

    Ajouter l'application Firebase iOS Passer à la téléchargement Firebase SDK Bouton
  7. Sauter cette Add initialization code étape

    Firebase Ajouter l'application iOS Sauter l'initialisation Code Bouton
  8. Cliquez sur le Continue to console bouton

    Firebase Ajouter l'application iOS Continuer vers la Console Bouton
  9. Obtenez votre ID de client iOS et votre YOUR_DOT_REVERSED_IOS_CLIENT_ID

    1. Allez à la Console Cloud Google à console.cloud.google.com

    2. Trouvez votre projet

      1. Cliquez sur le sélecteur de projet Sélecteur de projet Google Cloud Console
      2. Recherchez votre projet en utilisant le nom exact de votre projet Firebase et cliquez dessus. Dans mon cas, il s'agit de sociallogin-tutorial-app. Sélecteur de projet Firebase
    3. Ouvrez la barre de recherche et ouvrez credentials

      1. Ouvrez la barre de recherche Barre de recherche Google Cloud Console
      2. Recherchez credentials et cliquez sur le APIs and Services un (le numéro 2 sur l'écran d'écran) Recherche de credenciaux Google Cloud Console
    4. Cliquez sur le iOS client for [YOUR_APP_ID] (auto created by Google Service) Un. Dans mon cas, il s'agit de sociallogin-tutorial-app.

      Google Cloud Console Identifiant client iOS
    5. Copiez le Client ID ainsi que le iOS URL schemeCela sera respectivement votre iOSClientId et YOUR_DOT_REVERSED_IOS_CLIENT_ID.

      Clé ID Client iOS Google Cloud Console Credentials Copier
  10. Obtenez votre ID client web

    1. Retournez au console Firebase et allez à Build -> Authentication Menu d'authentification Firebase
    2. Cliquez sur le Sign-in method bouton bouton d'authentification Firebase Sign-in Method
    3. Cliquez sur le Google fournisseur Fournisseur d'authentification Firebase Sign-in Method Google
    4. Cliquez sur le Web SDK configuration bouton Méthode de connexion Firebase Authentication Sign-in Web SDK Configuration du bouton
    5. Copiez le Web client ID. Cela sera votre webClientId dans la initialize méthode de la plugin. Méthode de connexion Firebase Authentication Sign-in Web SDK Configuration du Client ID Web
  11. Modifier votre fichier Info.plist

    1. Ouvrez Xcode et trouvez le Info.plist fichier

      fichier Info.plist dans le navigateur de projet Xcode
    2. Cliquez avec le bouton droit sur ce fichier et ouvrez-l’en source code

      Menu contextuel montrant l'option Ouvrir en source Code
    3. En bas de votre Plist fichier, vous verrez un </dict> tag

      Closing dict tag in Info.plist file
    4. Insérez le fragment suivant juste avant la fermeture </dict> tag

      Info.plist avec schémas d'URL code insérés avant la fermeture de la balise de dictionnaire
      <key>CFBundleURLTypes</key>
      <array>
      <dict>
      <key>CFBundleURLSchemes</key>
      <array>
      <string>YOUR_DOT_REVERSED_IOS_CLIENT_ID</string>
      </array>
      </dict>
      </array>
      <key>GIDClientID</key>
      <string>YOUR_IOS_CLIENT_ID.apps.googleusercontent.com</string>
    5. Changer le YOUR_DOT_REVERSED_IOS_CLIENT_ID Balise de fin de dictionnaire dans le fichier Info.plist

      Info.plist avec le client ID réel inséré dans les schémas de URL
  12. Modifiez la YOUR_IOS_CLIENT_ID à l'ID du client iOS que vous avez copié dans l'étape 9

  13. Enregistrez le fichier avec Command + S

  14. Modifiez le AppDelegate.swift

    1. Ouvrez l’AppDelegate

      Fichier AppDelegate.swift dans le navigateur de projet Xcode
    2. Insérer import GoogleSignIn en haut du fichier

      AppDelegate.swift avec l'import GoogleSignIn ajouté
    3. Trouvez la func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:]) fonction

      La fonction d'ouverture de l'application d'origine dans AppDelegate
    4. Modifiez la fonction pour qu'elle ressemble à ceci

      func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:]) -> Bool {
      // Called when the app was launched with a url. Feel free to add additional processing here,
      // but if you want the App API to support tracking app url opens, make sure to keep this call
      var handled: Bool
      handled = GIDSignIn.sharedInstance.handle(url)
      if handled {
      return true
      }
      return ApplicationDelegateProxy.shared.application(app, open: url, options: options)
      }
      Fonction d'ouverture de l'application modifiée avec prise en charge de GoogleSignIn
    5. Enregistrer le fichier avec Command + S

  15. Utiliser le login Google dans votre application

    À ce stade, vous êtes prêt à utiliser le login Google dans votre application. Veuillez utiliser le authUtils.ts fichier de l'application d'exemple pour s'authentifier avec Google.

L'utilisateur sera créé automatiquement dans Firebase Auth lors de la première connexion.

Si l'authentification est bloquée ou échoue :

  • Vérifiez que idToken l'audience correspond à votre ID client Firebase web
  • Vérifiez que Google Sign-In est activé dans Firebase Console
  • Assurez-vous que Info.plist contient les schémas URL corrects et GIDClientID
  • Vérifiez que iOSServerClientId correspond à votre ID client web
  • Vérifiez le l'exemple d'application code en référence

Continuez à partir de la connexion Google Firebase sur iOS

Section intitulée “Continuez avec Firebase Google Login sur iOS”

Si vous utilisez la connexion Google Firebase sur iOS pour planifier l'authentification et les flux de compte, connectez-l’avec En utilisant @capgo/capacitor-social-login pour la capacité native dans En utilisant @capgo/capacitor-social-login, @capgo/capacitor-connexion-social pour le détail d'implémentation dans @capgo/capacitor-social-login, @capgo/capacitor-passkey pour les détails d'implémentation dans @capgo/capacitor-passkey @capgo/capacitor-native-biometrique pour les détails d'implémentation dans @capgo/capacitor-native-biometric, et Authentification à deux facteurs pour les détails d'implémentation dans Authentification à deux facteurs.