コンテンツにジャンプ

Supabase Google ログイン

GitHub

このガイドでは、Android用のGoogle Sign-InとSupabase Authenticationの統合を実現します。以下のステップを完了していることを前提としています。

完全な実装は、 例のアプリの supabaseAuthUtils.ts ファイルにあります。このガイドでは、主な概念とその使用方法を説明します。

関数は、 authenticateWithGoogleSupabase コピー

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

Capgoのしくみ

「Capgoのしくみ」

Capgoのしくみの詳細については、非同期サインインのフロー、nonceの生成、JWTの検証、Supabaseのサインインについては、 Capgoのしくみのセクションを参照してください。.

Capgoの完全なcodeリファレンスについては、 「Capgoの完全なCodeリファレンス」.

重要な注意事項

「重要な注意事項」

nonceの取り扱い

「nonceの取り扱い」

nonceの実装は、 React Native Google Sign Inのドキュメントからパターンを取り入れています。:

  • rawNonce Supabaseに移動します。 signInWithIdToken()
  • Supabaseは、 rawNonce をハッシュ化し、 nonceDigest Google Sign-Inから取得したIDトークンに含まれる
  • nonceDigest (SHA-256ハッシュ、16進数エンコード)をSupabaseに送信します。 nonce Google Sign-In APIの

自動リトライ

セクション

自動リトライロジックが含まれる実装

  • 最初の試行でJWT検証が失敗した場合、ログアウトし、再試行します。
  • キャッシュされたトークンが不正なnonceを持っている可能性があるケースを処理します。
  • 再試行も失敗した場合、エラーが返されます。

認証が失敗した場合:

  • 無効な聴衆Google クライアント ID が両方の Google Cloud Console と Supabase に一致していることを確認してください。
  • ノンス マッチコンソール ログを確認してください - 関数は自動的に再試行しますが、必要に応じて手動でログアウトしてください。
  • トークン検証が失敗した場合:Capacitor を使用していることを確認してください。 mode: 'online' initialize の呼び出しで idToken を取得するようにします。
  • サンプル アプリを確認してください __CAPGO_KEEP_0__ 例: code for reference

Android用のSupabase Googleログインから続けてください

セクション: Android用のSupabase Googleログインから続けてください

あなたが使用している場合 Android用のSupabase Googleログイン 認証とアカウントフローの計画に使用している場合、Supabase Googleログインを Using @capgo/capacitor-social-login Using @capgo/capacitor-social-loginのネイティブ機能のために @capgo/capacitor-social-login @capgo/capacitor-social-loginの実装詳細のために @capgo/capacitor-passkey @capgo/capacitor-passkeyの実装詳細のために @capgo/capacitor-native-biometric の実装詳細については@capgo/capacitor-native-biometricを参照してください。 2要素認証 の実装詳細については2要素認証を参照してください。