Inicio de Sesión con Supabase y Google en Android
Copiar una línea de comando de configuración con los pasos de instalación y la guía de markdown completa para este plugin.
Introducción
Sección titulada “Introducción”Esta guía te ayudará a integrar Google Sign-In con Supabase Authentication en Android. Se asume que ya has completado:
- el Configuración de inicio de sesión de Google para Android
- la Configuración general de inicio de sesión de Google de Supabase.
Implementación
Sección titulada “Implementación”La implementación completa está disponible en el archivo del supabaseAuthUtils.ts aplicación de ejemplo.
Esta guía explica los conceptos clave y cómo utilizarlo.
Sección titulada “Usando el Asistente de Autenticación”La authenticateWithGoogleSupabase función gestiona todo el flujo de autenticación:
import { authenticateWithGoogleSupabase } from './supabaseAuthUtils';
const result = await authenticateWithGoogleSupabase();if (result.success) { console.log('Signed in:', result.user); // Navigate to your authenticated area} else { console.error('Error:', result.error);}Cómo Funciona
Sección titulada “Cómo Funciona”Para una explicación detallada de cómo funciona el flujo de autenticación, incluyendo la generación de nonce, la validación de JWT y el inicio de sesión en Supabase, consulte la sección Cómo Funciona del Guía de Configuración General.
Para la referencia completa code, consulte la sección Referencia completa Code del Guía de Configuración General.
Notas Importantes
Sección titulada “Notas Importantes”Gestión de Nonce
Sección titulada “Gestión de Nonce”La implementación de nonce sigue el patrón del documento de React Native Google Sign In se dirige a Supabase’s:
rawNonceSupabase hace una hash designInWithIdToken()- y la compara con el
rawNonceque se incluye en el token de ID de Google Sign-InnonceDigest(hash SHA-256, codificado en hexadecimal) se dirige al nonceDigestparámetro en las API de Google Sign-InnonceReintentos Automáticos
Sección titulada “Reintentos Automáticos”
The nonce implementation follows the pattern from the __CAPGO_KEEP_0__ documentationLa implementación incluye lógica de reintento automático:
- Si la validación de JWT falla en el primer intento, se desloguea y se vuelve a intentar una vez
- Esto maneja casos en los que los tokens en caché pueden tener noches incorrectos
- Si el reintento también falla, se devuelve un error
Solución de problemas
Sección titulada “Solución de problemas”Si falla la autenticación:
- Auditorio inválido: Verifica que tus identificadores de cliente de Google coincidan en ambos Google Cloud Console y Supabase
- No coincidencia de nonce: Revisa los registros del console - la función se reintentará automáticamente, pero puedes desloguearte manualmente primero si es necesario
- Fallo de validación de token: Asegúrate de utilizar
mode: 'online'en la llamada de inicialización para obtener un idToken - Revisa la aplicación de ejemplo code para referencia