Inicio
Copiar una solicitud de configuración con los pasos de instalación y la guía de markdown completa para este plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-social-login`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/social-login/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
Instalación
Sección titulada “Instalación”Puede utilizar nuestra configuración asistida por IA para instalar el plugin. Agregue las Capgo habilidades a su herramienta de IA utilizando el siguiente comando:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsLuego utilice el siguiente prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-social-login` plugin in my project.Si prefiere la configuración manual, instale el plugin ejecutando los siguientes comandos y siguiendo las instrucciones específicas de la plataforma a continuación:
-
Instalar el paquete
Ventana de terminal bun add @capgo/capacitor-social-login -
Sincronizar con proyectos nativos
Ventana de terminal bunx cap sync -
Iniciar en inicio de aplicación
import { SocialLogin } from '@capgo/capacitor-social-login';await SocialLogin.initialize({google: {webClientId: 'your-google-web-client-id',iOSServerClientId: 'your-google-server-client-id',mode: 'online',},apple: {clientId: 'your-apple-service-id',useProperTokenExchange: true,useBroadcastChannel: true,},facebook: {appId: 'your-facebook-app-id',},twitter: {clientId: 'your-twitter-client-id',redirectUrl: 'myapp://oauth/twitter',},oauth2: {github: {appId: 'your-github-client-id',authorizationBaseUrl: 'https://github.com/login/oauth/authorize',accessTokenEndpoint: 'https://github.com/login/oauth/access_token',redirectUrl: 'myapp://oauth/github',scope: 'read:user user:email',pkceEnabled: true,},},});
Ejemplos de flujo principal
Ejemplos de flujo básicoIniciar sesión
Ejemplo de inicio de sesiónawait SocialLogin.login({ provider: 'google', options: { scopes: ['profile', 'email'] },});
await SocialLogin.login({ provider: 'oauth2', options: { providerId: 'github', scope: 'read:user user:email', },});Verificación de sesión
Ejemplos de verificación de sesiónconst status = await SocialLogin.isLoggedIn({ provider: 'google' });await SocialLogin.logout({ provider: 'google' });Códigos de autenticación y refresco
Ejemplos de códigos de autenticación y refresco// For providers that support this modeconst authCodeResult = await SocialLogin.getAuthorizationCode({ provider: 'google' });await SocialLogin.refresh({ provider: 'google', options: {} as never });Ayudas avanzadas
Ejemplos de ayudas avanzadasconst jwt = await SocialLogin.decodeIdToken({ idToken: 'eyJhbGciOi...',});
const { date } = await SocialLogin.getAccessTokenExpirationDate({ accessTokenExpirationDate: Date.now() + 3600 * 1000,});
const expired = await SocialLogin.isAccessTokenExpired({ accessTokenExpirationDate: Date.now() + 1000,});
const active = await SocialLogin.isRefreshTokenAvailable({ refreshToken: 'a-token' });Notas específicas del proveedor
Sección titulada “Notas específicas del proveedor”Modo de línea sin conexión de Google
Sección titulada “Modo de línea sin conexión de Google”google.mode: 'offline' devuelve serverAuthCode desde login. En este modo, logout, isLoggedIn, getAuthorizationCode, y refresh no están disponibles.
Usa serverAuthCode solo como entrada para el intercambio de token de tu backend. Si necesitas llamar SocialLogin.refresh() en lugar de eso. google.mode: 'online' Apple
Configuración useProperTokenExchange: true para manejo de tokens estricto y useBroadcastChannel: true para configuración simplificada de Android.
flujo de OAuth2 de redirección web
Sección titulada “flujo de OAuth2 de redirección web”Utilice OAuth2LoginOptions.flow: 'redirect' para flujos web que navegan desde la página.
Configuración del proveedor en Capacitor
Sección titulada “Configuración del proveedor en Capacitor”Puede deshabilitar proveedores no utilizados para reducir binarios nativos:
import type { CapacitorConfig } from '@capacitor/cli';
const config: CapacitorConfig = { appId: 'com.example.app', appName: 'My App', webDir: 'dist', plugins: { SocialLogin: { providers: { google: true, facebook: true, apple: true, twitter: false, }, }, },};Documentación relacionada
Sección titulada “Documentación relacionada”- Resumen de integraciones
- Mejor integración de autenticación
- Proveedores de OAuth2 y OIDC
- Migrar desde Ionic Auth Connect
- Guía de migración de Social Login Auth Connect
- Migrar proveedores legados
- Solución de migración de plugins de Ionic Enterprise
Sigue adelante desde Getting Started
Sección titulada “Sigue adelante desde Getting Started”Si estás utilizando Iniciación para planificar la autenticación y los flujos de cuenta, conectarlo 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-llave para el detalle de implementación en @capgo/capacitor-clave-llave, @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.