Pulsa para ir al contenido principal

Configuración de inicio de sesión de Apple de Supabase en iOS

GitHub

Esta guía te ayudará a integrar Apple Sign-In con Supabase Authentication en iOS. Se asume que ya has completado:

La implementación completa está disponible en el archivo de la aplicación de ejemplo. Este manual explica los conceptos clave y cómo utilizarlo. Utilizando la Ayuda de Autenticación supabaseAuthUtils.ts La

La función gestiona todo el flujo de autenticación:

Copiar a portapapeles

Copy to clipboard authenticateWithAppleSupabase Copy to clipboard

import { authenticateWithAppleSupabase } from './supabaseAuthUtils';
const result = await authenticateWithAppleSupabase();
if (result.success) {
console.log('Signed in:', result.user);
// Navigate to your authenticated area
} else {
console.error('Error:', result.error);
}

En iOS, Sign In de Apple utiliza la implementación nativa:

  1. Iniciación: El plugin utiliza automáticamente el ID de paquete de tu aplicación (no clientId necesario)
  2. Iniciar sesión nativa: Utiliza el botón de inicio de sesión de Apple y el flujo de autenticación nativos
  3. Token de Identidad: Apple devuelve un token de identidad (JWT) que contiene información del usuario
  4. Autenticación de Supabase: El token de identidad se envía a Supabase utilizando signInWithIdToken()

La función de ayuda detecta automáticamente la plataforma iOS y configura todo correctamente.

  • iOS utiliza automáticamente el ID de paquete de tu aplicación para el inicio de sesión con Apple
  • Asegúrate de que tu ID de paquete coincida con lo configurado en el Portal del Desarrollador de Apple
  • El ID de paquete debe tener habilitada la capacidad de "Iniciar sesión con Apple"

En Supabase, configura tu proveedor de Apple con:

  • ID de cliente: Su ID de App de iOS (ID de paquete) - por ejemplo, app.capgo.plugin.SocialLogin

Si también estás utilizando Android/Web, necesitarás proporcionar tanto el ID de App como el ID de Servicio en el campo ID de Cliente de Supabase (separado por comas).

Si falla la autenticación:

  • Diferencia en el ID de paquete: Verifica que el ID de paquete coincida en tanto en Xcode como en el Portal de Desarrolladores de Apple
  • Capacidad no habilitada: Asegúrate de que la capacidad “Iniciar sesión con Apple” esté habilitada en Xcode
  • Configuración de Supabase: Verifica que el ID de App esté configurado correctamente en los ajustes de proveedor de Apple de Supabase
  • Fallo en la validación de tokensVerifique que el token de identidad se está recibiendo de Apple.
  • Revisa el ejemplo de aplicación code para referencia

Si estás utilizando Supabase Apple Login en iOS Setup para planificar la autenticación y los flujos de cuenta, conecta Usando @capgo/capacitor-social-login para la capacidad nativa en Usando @capgo/capacitor-social-login, @capgo/capacitor-social-login para los detalles de implementación en @capgo/capacitor-login-social @capgo/capacitor-clave-llave para los detalles de implementación en @capgo/capacitor-clave-llave @capgo/capacitor-autenticación-biográfica-nativa para los detalles de implementación en @capgo/capacitor-autenticación-biográfica-nativa, y Autenticación de dos factores para los detalles de implementación en Autenticación de dos factores.