Android에서 Supabase Google Login
이 플러그인의 설치 단계와 전체 마크다운 가이드가 포함된 설정 프롬프트를 복사하세요.
소개
소개이 가이드는 Android에서 Supabase Authentication에 Google Sign-In을 통합하는 방법을 안내합니다. 다음 단계가 이미 완료되었다고 가정합니다:
구현 방법
구현전체 구현 코드는 다음에서 확인할 수 있습니다: 예제 앱의 supabaseAuthUtils.ts 파일입니다. 이 가이드에서는 주요 개념과 사용 방법을 설명합니다.
Authentication Helper 사용하기
“Authentication Helper 사용하기” 섹션이 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);}작동 원리
“작동 원리” 섹션nonce 생성, JWT 검증, Supabase 로그인 등 인증 흐름의 상세한 작동 원리는 General Setup 가이드의 How It Works 섹션을 참조하세요.
code 전체 레퍼런스는 다음을 참조하세요 General Setup 가이드의 Code Reference 섹션을 완료하세요.
Nonce 처리
“Nonce Handling” 섹션nonce 구현 방식은 다음 패턴을 따릅니다: React Native Google Sign In 문서:
rawNonceSupabase로 전달됩니다signInWithIdToken()- Supabase는 다음 값을 해싱합니다:
rawNonce및 이를 다음 값과 비교합니다:nonceDigestGoogle Sign-In의 ID token에 포함된 nonceDigest(SHA-256 해시, hex-encoded)가nonceGoogle Sign-In API의 파라미터
자동 재시도
“Automatic Retry” 섹션구현 내용에는 다음과 같은 자동 재시도 로직이 포함됩니다:
- 첫 번째 JWT 검증에 실패하면, 로그아웃 후 한 번 더 재시도합니다
- 이는 캐시된 토큰의 nonce 값이 잘못되었을 경우를 처리합니다
- 재시도마저 실패하면 에러를 반환합니다
문제 해결
“문제 해결” 섹션인증에 실패하는 경우:
- 잘못된 audience 값입니다: Google Cloud Console과 Supabase의 Google Client ID가 일치하는지 확인하세요
- Nonce 불일치: 콘솔 로그를 확인하세요. 함수가 자동으로 재시도하지만, 필요한 경우 수동으로 로그아웃한 뒤 다시 시도할 수 있습니다.
- 토큰 검증 실패: 다음을 사용 중인지 확인하세요:
mode: 'online'idToken을 가져오기 위한 initialize 호출 시 - 다음 내용을 참고하세요: 예제 앱 code 참조용
Android에서 Supabase Google Login 계속 진행하기
“Keep going from Supabase Google Login on Android” 섹션사용 중이라면 Android에서 Supabase Google Login 인증 및 계정 흐름을 설계할 때, 이를 다음 항목과 연결하세요: @capgo/capacitor-social-login 사용하기 @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단계 인증의 구현 세부 사항에 대해서는