Saltar al contenido

Supabase Google Login en Android

GitHub

Esta guía te ayudará a integrar el inicio de sesión de Google con la autenticación de Supabase en Android. Se asume que ya has completado:

La implementación completa está disponible en la aplicación de ejemplo’s supabaseAuthUtils.ts archivo. Esta guía explica los conceptos clave y cómo utilizarlo.

El authenticateWithGoogleSupabase La 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);
}

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 Cómo Funciona sección en la Guía de Configuración General.

Para la referencia completa code, consulte la Sección de Referencia completa Code en la Guía de Configuración General.

La implementación de nonce sigue el patrón del documento de documentación de inicio de sesión de Google para React Native:

  • rawNonce va a Supabase’s signInWithIdToken()
  • Supabase hace una hash de rawNonce y la compara con el nonceDigest que se incluye en el token de ID de inicio de sesión de Google
  • nonceDigest (hash SHA-256, codificado en hexadecimal) va al nonce parámetro en las API de inicio de sesión de Google

La implementación incluye lógica de reintentos automáticos:

  • Si la validación de JWT falla en el primer intento, se desloguea y se vuelve a intentar una vez
  • Esto maneja casos donde los tokens en caché pueden tener noches incorrectos
  • Si el reintento también falla, se devuelve un error

Si falla la autenticación:

  • Audencia inválida: Verifica que tus IDs de cliente de Google coincidan en ambos Google Cloud Console y Supabase
  • Diferencia de nonce: Verifica los registros del console - la función volverá a intentarlo automáticamente, pero puedes cerrar sesión manualmente si es necesario
  • Falla en la 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 __CAPGO_KEEP_0__ example app code Sigue adelante desde Supabase Google Login en Android

Sección titulada “Sigue adelante desde Supabase Google Login en Android”

Si estás utilizando

Supabase Google Login en Android para planificar la autenticación y los flujos de cuenta, conecta con If you are using 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 de dos factores para el detalle de implementación en Autenticación de dos factores.