Aller au contenu

Supabase Google Login sur Android

GitHub

Ce guide vous aidera à intégrer Google Sign-In avec Supabase Authentication sur Android. Nous supposons que vous avez déjà terminé :

L'implémentation complète est disponible dans le de l'application exemple supabaseAuthUtils.ts fichier. Ce guide explique les concepts clés et comment l'utiliser.

Le authenticateWithGoogleSupabase fonction gère l'intégralité du flux d'authentification :

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);
}

Pour une explication détaillée du fonctionnement du flux d'authentification, incluant la génération du nonce, la validation JWT et la connexion Supabase, consultez la section « Comment ça marche » du guide de configuration générale.

Pour la référence complète de code, consultez le Complétez la section Référence Code dans le guide de configuration générale.

L'implémentation du nonce suit le modèle de la documentation React Native Google Sign In:

  • rawNonce redirige vers le service de Supabase signInWithIdToken()
  • Supabase génère un hash de rawNonce et le compare avec le nonceDigest qui est inclus dans l'ID token de Google Sign-In
  • nonceDigest (hash SHA-256, encodé en hex) est envoyé à nonce paramètre dans les API Google Sign-In

L'implémentation inclut une logique de réessai automatique :

  • If JWT validation fails on first attempt, it logs out and retries once
  • Ceci gère les cas où les tokens mis en cache pourraient avoir des nonces incorrects
  • Si le réessai échoue également, une erreur est renvoyée

Si l'authentification échoue :

  • Audience invalide: Vérifiez que vos Google Client IDs correspondent dans la Google Cloud Console et dans Supabase
  • Échec de la correspondance du nonce: Vérifiez les logs de la console - la fonction tentera automatiquement de nouveau, mais vous pouvez vous déconnecter manuellement au préalable si nécessaire
  • Échec de la validation du token: Assurez-vous d'utiliser mode: 'online' dans l'appel initialize pour obtenir un idToken
  • Examinez le exemple code pour référence

Continuer après Supabase Google Login sur Android

Section intitulée « Continuer après Supabase Google Login sur Android »

Si vous utilisez Supabase Google Login sur Android pour planifier l'authentification et les flux de comptes, connectez-l’à Utilisation de @capgo/capacitor-social-login pour la capacité native dans l'utilisation de @capgo/capacitor-social-login, @capgo/capacitor-social-login pour les détails d'implémentation dans @capgo/capacitor-social-login, @capgo/capacitor-passkey pour les détails d'implémentation dans @capgo/capacitor-passkey, @capgo/capacitor-native-biometric pour les détails d'implémentation dans @capgo/capacitor-native-biometric, et Authentification à deux facteurs pour les détails d'implémentation de l'authentification à deux facteurs.