Google Login en iOS
Copia un prompt de configuración con los pasos de instalación y la guía de markdown completa para este plugin.
Introducción
Título de la sección “Introducción”En esta guía, aprenderás a configurar el inicio de sesión de Google con Capgo Inicio de sesión social para iOS. Supongo que ya has leído la guía de configuración general.
Usando inicio de sesión de Google en iOS
Sección titulada “Usando inicio de sesión de Google en iOS”Aprenderá a configurar el inicio de sesión de Google en iOS en esta parte.
-
Crear un ID de cliente de iOS en la consola de Google
-
Haga clic en la barra de búsqueda
-
Buscar
credentialsy haga clic en elAPIs and Servicesuno (número 2 en la captura de pantalla)
-
Haga clic en el
create credentials
-
Seleccionar
OAuth client ID
-
Seleccionar el
Application typeparaiOS
-
Encuentre el ID de la cesta
-
Abrir Xcode
-
Haga doble clic en
App
-
Asegúrese de que esté en
Targets -> App
-
Encuentre su
Bundle Identifier
-
Volver a la consola de Google y pegar tu
Bundle IdentifierenBundle ID
-
-
Opcionalmente, agregar tu
App Store IDoTeam IDen el campo de cliente ID si has publicado tu aplicación en App Store -
Después de llenar todos los detalles, hacer clic en
create
-
Hacer clic en
OK
-
Abrir el cliente iOS recién creado
-
Copie los siguientes datos
-
-
Modifique la configuración de Info.plist de su aplicación
-
Abra Xcode y encuentre el archivo
Info.plistarchivo
-
Haga clic derecho en este archivo y abra como fuente code
-
En la parte inferior de su
Plistarchivo, verá una</dict>etiqueta
-
Inserte el siguiente fragmento justo antes de la etiqueta de cierre
</dict>archivo Info.plist con esquemas de URL __CAPGO_KEEP_0__ insertados antes de la etiqueta de cierre
<key>CFBundleURLTypes</key><array><dict><key>CFBundleURLSchemes</key><array><string>YOUR_DOT_REVERSED_IOS_CLIENT_ID</string></array></dict></array> -
Cambiar a
YOUR_DOT_REVERSED_IOS_CLIENT_IDal valor copiado en el paso anterior
-
Guardar el archivo con
Command + S
-
-
Modificar el
AppDelegate.swift-
Abrir el AppDelegate
-
Insertar
import GoogleSignInen la parte superior del archivo
-
Encuentre el
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:])función
-
Modifique 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 callvar handled: Boolhandled = GIDSignIn.sharedInstance.handle(url)if handled {return true}return ApplicationDelegateProxy.shared.application(app, open: url, options: options)}
-
Guardar el archivo con
Command + S
-
-
Configurar inicio de sesión de Google en su JavaScript/TypeScript code
-
Importar
SocialLoginyCapacitorimport { SocialLogin } from '@capgo/capacitor-social-login';import { Capacitor } from '@capacitor/core'; -
Llamar al método initialize (debe llamarse solo una vez)
Configuración básica (modo en línea - recomendado para la mayoría de las aplicaciones):
// onMounted is Vue specificonMounted(() => {SocialLogin.initialize({google: {iOSClientId: '673324426943-redacted.apps.googleusercontent.com',mode: 'online' // Default mode}})})Configuración avanzada con IDs de cliente adicionales:
onMounted(() => {SocialLogin.initialize({google: {webClientId: 'YOUR_WEB_CLIENT_ID', // Optional: for web platform supportiOSClientId: 'YOUR_IOS_CLIENT_ID', // Required: from step 1iOSServerClientId: 'YOUR_WEB_CLIENT_ID', // Optional: same as webClientId, needed for some advanced featuresmode: 'online' // 'online' or 'offline'}})}) -
Implemente la función de inicio de sesión. Crea un botón y ejecute el siguiente code al hacer clic
Para el modo en línea:
const res = await SocialLogin.login({provider: 'google',options: {}})// handle the response - contains user dataconsole.log(JSON.stringify(res))Para modo offline:
const res = await SocialLogin.login({provider: 'google',options: {forceRefreshToken: true // Recommended for offline mode}})// res contains serverAuthCode, not user data// Send serverAuthCode to your backend to get user information// Do not call SocialLogin.refresh() in offline modeconsole.log('Server auth code:', res.result.serverAuthCode)
-
-
Prueba tu aplicación
-
Construye tu app y ejecútala
cap sync -
Si has hecho todo correctamente, deberías ver el flujo de inicio de sesión de Google funcionando correctamente
-
Problemas conocidos
Sección titulada “Problemas conocidos”Incompatibilidad del plugin de pantalla de privacidad
Pantalla de privacidad Plugin IncompatibilidadEl plugin de inicio de sesión de Google es incompatible con @capacitor/pantalla-de-privacidad. Al utilizar ambos plugins juntos, el navegador de inicio de sesión de Google se interrumpirá por la pantalla de privacidad.
Solución alternativa: Llamar await PrivacyScreen.disable(); antes de llamar a la función de inicio de sesión:
import { PrivacyScreen } from '@capacitor/privacy-screen';import { SocialLogin } from '@capgo/capacitor-social-login';
await PrivacyScreen.disable();await SocialLogin.login({ provider: 'google', options: {}});Sigue adelante desde Inicio de sesión de Google en iOS
Título de sección “Sigue adelante desde Inicio de sesión de Google en iOS”Si estás utilizando Inicio de sesión de Google en iOS To plan authentication and account flows, connect it with 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-passkey Para el detalle de implementación en @capgo/capacitor-passkey, @capgo/capacitor-biometría-nativa Para el detalle de implementación en @capgo/capacitor-biometría-nativa, y Dos factores de autenticación Para el detalle de implementación en Dos factores de autenticación.