コンテンツにジャンプ

CapgoのSupabase Google Login on Android

GitHub

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

完全な実装は、

例のアプリケーション

example app’s supabaseAuthUtils.ts file. このガイドでは、主な概念とその使用方法について説明します。

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

認証フローの詳細な説明、非接続生成、JWT検証、Supabaseサインインについては、General Setupガイドの「How It Works」セクションを参照してください。 完全な__CAPGO_KEEP_0__リファレンスについては、General Setupガイドの「Complete __CAPGO_KEEP_0__ Reference」セクションを参照してください。.

For the complete code reference, see the For the complete Code reference, see the.

nonce の実装は、React Native Google Sign In ドキュメントのパターンに従っています。 Supabase へ:

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

実装には自動再試行ロジックが含まれています:

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

認証が失敗した場合:

  • 無効な受信者: Google Cloud ConsoleとSupabaseでGoogle Client IDが一致していることを確認してください
  • nonceの不一致: コンソールログを確認してください - 関数は自動的に再試行しますが、必要に応じて手動でログアウトしてください
  • トークン検証失敗: 使用していることを確認してください mode: 'online' initialize呼び出しにidTokenを取得するために
  • 参考として code 例のアプリ

Supabase Google Login on Androidから続けてください

Android用のSupabase Google Loginから続けてください

Supabase Google Login on Androidを使用して 認証とアカウントフローの計画に使用している場合、接続してください 認証とアカウントフローの計画に使用している場合、接続してください Using @capgo/capacitor-social-login native機能のための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要素認証の実装詳細