Saltar al contenido

Inicio de sesión social de Google de Firebase en iOS

GitHub

items Configuración general de Firebase Google.

Pasos de configuración

Pasos de configuración
  1. Dirígete a la vista general de tu proyecto en https://console.cloud.google.com

    Vista general de proyecto de Firebase
  2. Haz clic en el Add app botón

    Botón de agregar aplicación de Firebase Botón de agregar aplicación de Firebase
  3. Seleccionar iOS

    Botón de agregar aplicación de Firebase para iOS
  4. Rellena la primera parte del formulario

    1. Rellena el Apple bundle ID
      1. Abre Xcode en tu aplicación usando npx cap open ios
      2. Haz doble clic en App Objetivo de la aplicación en el navegador de proyectos de Xcode
      3. Asegúrate de que estás en Targets -> App Sección de objetivos en Xcode con App seleccionada
      4. Encuentre su Bundle Identifier Campo de identificador de paquete en ajustes de proyecto de Xcode
      5. Copie el Bundle Identifier y péguelo en la consola de Firebase Campo de identificador de paquete de Firebase Add App iOS
    2. Haga clic en el Register app botón Agregar App de Firebase iOS Botón de Registro
  5. Saltarse el Download config file paso

    Botón Descargar Firebase Add App iOS Saltarse
  6. Saltarse el Add firebase SDK paso

    Botón Descargar Firebase Add App iOS Saltarse Firebase SDK
  7. Saltarse el Add initialization code paso

    Botón Inicialización Add Firebase Add App iOS Saltarse Code
  8. Haga clic en el Continue to console botón

    Agregar App de Firebase iOS Continuar a la Consola de Botón
  9. Obtén tu ID de cliente iOS y tu YOUR_DOT_REVERSED_IOS_CLIENT_ID

    1. Ve a la Consola de Google Cloud en console.cloud.google.com

    2. Encuentra tu proyecto

      1. Haz clic en el selector de proyecto Selector de Proyecto de la Consola de Google Cloud
      2. Busca tu proyecto por el nombre exacto de tu proyecto de Firebase y haz clic en él. En mi caso, es sociallogin-tutorial-app. Selector de Proyecto de Firebase Proyecto
    3. Abre la barra de búsqueda y abre credentials

      1. Abre la barra de búsqueda Barra de Búsqueda de la Consola de Google Cloud
      2. Buscar por credentials y haz clic en el APIs and Services uno (número 2 en la captura de pantalla) Buscar credenciales de Google Cloud Console
    4. Haz clic en el iOS client for [YOUR_APP_ID] (auto created by Google Service) uno. En mi caso, es sociallogin-tutorial-app.

      Credenciales de cliente iOS de Google Cloud Console
    5. Copia el Client ID tanto como el iOS URL scheme. Esto será respectivamente tu iOSClientId y YOUR_DOT_REVERSED_IOS_CLIENT_ID.

      ID de cliente de Google Cloud Console Credenciales iOS Copiar
  10. Obtén tu ID de cliente web

    1. Vuelve a la consola de Firebase y ve a Build -> Authentication Menú de autenticación de Firebase
    2. Haz clic en el Sign-in method botón Método de inicio de sesión de autenticación de Firebase
    3. Haga clic en el Google proveedor Proveedor de inicio de sesión de autenticación de Firebase Google
    4. Haga clic en el Web SDK configuration botón Proveedor de inicio de sesión de autenticación de Firebase Web SDK Configuración del botón
    5. Copie el Web client ID. Esto será su webClientId en el initialize método de inicio de sesión del plugin. Proveedor de inicio de sesión de autenticación de Firebase Web SDK Configuración del ID de cliente de la aplicación web
  11. Modifica el archivo Info.plist de tu aplicación

    1. Abre Xcode y encuentra el Info.plist archivo

      archivo Info.plist en el navegador de proyectos de Xcode
    2. Haz clic derecho en este archivo y abre como fuente code

      Menú de clic derecho mostrando la opción Abrir como fuente Code
    3. En la parte inferior de tu Plist archivo, verás una </dict> etiqueta

      Etiqueta de cierre de diccionario en el archivo Info.plist
    4. Inserta el siguiente fragmento justo antes de la etiqueta de cierre </dict> Etiqueta de cierre de diccionario en el archivo Info.plist

      Info.plist con esquemas de URL code insertados antes de la etiqueta de cierre del diccionario
      <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. Cambie el YOUR_DOT_REVERSED_IOS_CLIENT_ID a el valor copiado en el paso 9 (el esquema de URL de iOS)

      Info.plist con el ID de cliente real insertado en los esquemas de URL
  12. Cambie el YOUR_IOS_CLIENT_ID a el ID de cliente de iOS que copió en el paso 9

  13. Guardar el archivo con Command + S

  14. Modificar el AppDelegate.swift

    1. Abrir el AppDelegate

      Archivo AppDelegate.swift en el navegador de proyectos de Xcode
    2. Insertar import GoogleSignIn en la parte superior del archivo

      AppDelegate.swift con GoogleSignIn import agregado
    3. Encuentre la func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:]) función

      La función de apertura original de la aplicación en AppDelegate
    4. Modificar la función para que se vea así

      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)
      }
      Función de apertura de la aplicación modificada con manejo de GoogleSignIn
    5. Guardar el archivo con Command + S

  15. Usando la autenticación de Google en tu aplicación

    En este paso, ya estás listo para usar la autenticación de Google en tu aplicación. Por favor, utiliza el authUtils.ts archivo del ejemplo de la aplicación para autenticarte con Google.

El usuario se creará automáticamente en Firebase Auth al primer inicio de sesión

Si la autenticación se atasca o falla:

  • Verificar que idToken el público coincida con tu ID de cliente web de Firebase
  • Verifique que Google Sign-In esté habilitado en la Consola de Firebase
  • Asegúrese de que Info.plist tenga los esquemas de URL y GIDClientID correctos
  • Verificar iOSServerClientId coincida con su ID de cliente web
  • Revisar el ejemplo de aplicación code para referencia

Siga adelante desde la autenticación de Google de Firebase en iOS

Título de la sección “Siga adelante desde la autenticación de Google de Firebase en iOS”

Si está utilizando la autenticación de Google de Firebase en iOS para planificar la autenticación y los flujos de cuenta, conecte con Usando @capgo/capacitor-login-social para la capacidad nativa en Usando @capgo/capacitor-login-social @capgo/capacitor-login-social para el detalle de implementación en @capgo/capacitor-login-social @capgo/capacitor-clave-privada para el detalle de implementación en @capgo/capacitor-clave-privada @capgo/capacitor-autenticación-biometria-nativa para el detalle de implementación en @capgo/capacitor-autenticación-biometria-nativa, y Autenticación en dos factores para el detalle de implementación en Autenticación en dos factores.