내용으로 건너뛰기

Supabase Google 로그인 Android

GitHub

이 가이드는 Android에서 Google Sign-In을 Supabase 인증과 통합하는 방법을 알려줍니다. 이미 다음을 완료한 것으로 가정합니다.

Implementation

Implementation

The complete implementation is available in the 예제 앱의 supabaseAuthUtils.ts 파일에 있습니다. 이 안내서에서는 주요 개념과 사용 방법을 설명합니다.

Using the Authentication Helper

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

How It Works

How It Works

How It Works For a detailed explanation of how the authentication flow works, including nonce generation, JWT validation, and Supabase sign-in, see the.

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

Complete __CAPGO_KEEP_0__ Reference section in the General Setup guide

Important Notes

Important Notes

Nonce Handling

The nonce implementation follows the pattern from the React Native Google Sign In documentation Nonce Handling:

  • rawNonce Supabase로 이동 signInWithIdToken()
  • Supabase는 Google Sign-In의 ID 토큰에서 SHA-256 해시를 생성합니다. rawNonce Supabase는 Google Sign-In의 ID 토큰에서 SHA-256 해시를 생성합니다. nonceDigest Google Sign-In의 ID 토큰에서 SHA-256 해시를 생성한 Supabase와 비교
  • nonceDigest Google Sign-In API에서 SHA-256 해시를 생성한 Supabase nonce SHA-256 해시 (16진수 인코딩)가 Google Sign-In API의 매개 변수로 이동

자동 재시도

자동 재시도

자동 재시도 로직이 포함된 implementation

  • JWT 검증이 첫 번째 시도에서 실패하면 로그아웃하고 다시 시도합니다.
  • 캐시된 토큰이 잘못된 nonce를 가지고 있는 경우를 처리합니다.
  • 재시도도 실패하면 오류가 반환됩니다.

인증이 실패하면:

  • 잘못된 청중: Google Cloud Console과 Supabase에서 Google Client ID가 일치하는지 확인하세요.
  • Nonce 일치하지 않음: 콘솔 로그를 확인하세요. 함수는 자동으로 다시 시도하지만 필요할 경우 수동으로 로그아웃하세요.
  • 토큰 유효성 검사 실패: initialize 함수에 idToken을 얻기 위해 mode: 'online' 사용하고 있는지 확인하세요.
  • 예시 앱 __CAPGO_KEEP_0__ 예시 앱 code 참조용

안드로이드에서 Supabase Google 로그인으로 계속하기

안드로이드에서 Supabase Google 로그인으로 계속하기

이 기능을 사용 중이라면 안드로이드에서 Supabase Google 로그인을 사용하고 있다면 인증 및 계정 흐름을 계획하고, Supabase Google 로그인을 연결하려면 @capgo/capacitor-social-login을 사용하여 @capgo/capacitor-social-login의 native 기능을 위해 @capgo/capacitor-social-login @capgo/capacitor-social-login의 구현 세부 정보를 위해 @capgo/capacitor-passkey @capgo/capacitor-passkey의 구현 세부 정보를 위해 @capgo/capacitor-native-biometric 구현 세부 사항에 대한 @capgo/capacitor-native-biometric, 그리고 두 단계 인증 두 단계 인증 구현 세부 사항에 대한.