Saltar al contenido

Iniciar sesión con Google de Supabase en Android

GitHub

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

The complete implementation is available in the __CAPGO_KEEP_0__ archivo de ejemplo del supabaseAuthUtils.ts Este manual explica los conceptos clave y cómo utilizarlo.

La authenticateWithGoogleSupabase función maneja 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 sección ¿Cómo Funciona? en la Guía de Configuración General.

For the complete code referencia, consulte la La referencia completa de Code se encuentra en la sección General Setup del guía de configuración.

La implementación de nonce sigue el patrón de la documentación de React Native Google Sign In:

  • 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 Google Sign-In
  • nonceDigest (hash SHA-256, codificado en hexadecimal) se envía 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 cierra sesión y se reintentan 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

Si falla la autenticación:

  • Auditorio inválido: Verifique que los identificadores de cliente de Google coincidan en ambas consolas de Google Cloud y Supabase
  • No coincidencia de nonce: Revisa los registros del console - la función se repetirá automáticamente, pero puedes cerrar sesión manualmente si es necesario
  • Falló la validación del token: Asegúrate de utilizar mode: 'online' en la llamada de inicialización para obtener un idToken
  • Revisa el ejemplo de aplicación code para referencia

Sigue adelante desde Supabase Google Login en Android

Título de sección “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, conecte 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-passkey para el detalle de implementación en @capgo/capacitor-passkey, @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.