Inicio de sesión de Google en iOS
Copia una línea de comando con los pasos de instalación y la guía de markdown completa para este plugin.
Introducción
Sección titulada “Introducción”En esta guía, aprenderá a configurar el inicio de sesión de Google con Capgo Inicio de sesión social para iOS. Supongo que ya ha leído el 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
-
Búsqueda de
credentialsy haga clic en elAPIs and Servicesuno (número 2 en la captura de pantalla)
-
Haga clic en la
create credentials
-
Seleccionar
OAuth client ID
-
Seleccionar el
Application typeparaiOS
-
Encuentre el ID de paquete
-
Abrir Xcode
-
Hacer doble clic en
App
-
Asegúrese de que esté en la
Targets -> App
-
Encuentra tu
Bundle Identifier
-
Vuelve a la Consola de Google y pega tu
Bundle IdentifierenBundle ID
-
-
Opcionalmente, agrega tu
App Store IDoTeam IDen el campo de ID de cliente si has publicado tu aplicación en la Tienda de App -
Después de rellenar todos los detalles, haz clic en
create
-
Haz clic en
OK
-
Abra el cliente iOS recién creado
-
Copie los siguientes datos
-
-
Modifica el archivo Info.plist de tu app
-
Abre Xcode y encuentra el archivo
Info.plistarchivo
-
Haz clic derecho en este archivo y abre como fuente code
-
En la parte inferior de tu
Plistarchivo, verás una</dict>etiqueta
-
Inserta el siguiente fragmento justo antes de la etiqueta de cierre
</dict>etiqueta
<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-
Abra 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
-
-
Configura el inicio de sesión de Google en tu JavaScript/TypeScript code
-
Importar
SocialLoginyCapacitorimport { SocialLogin } from '@capgo/capacitor-social-login';import { Capacitor } from '@capacitor/core'; -
Llamar al método de inicialización (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 aplicación 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
Sección titulada “Incompatibilidad del plugin de pantalla de privacidad”El plugin de inicio de sesión de Google es incompatible con @capacitor/privacy-screen. 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: {}});Seguir desde Inicio de sesión de Google en iOS
Sección titulada “Seguir desde Inicio de sesión de Google en iOS”Si estás utilizando Iniciar sesión en Google en iOS para planificar la autenticación y los flujos de cuenta, conectéalo 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-de-pasaje para el detalle de implementación en @capgo/capacitor-clave-de-pasaje, @capgo/capacitor-biometría-nativa para el detalle de implementación en @capgo/capacitor-biometría-nativa, y Autenticación en dos factores para el detalle de implementación en Autenticación en dos factores.