Supabase Google 로그인 Android
설치
소개
소개 섹션이 가이드는 안드로이드에서 구글 시그니 인과 수파베이스 인증을 통합하는 방법을 알려줍니다. 이미 다음을 완료한 것으로 가정합니다:
- the 구글 로그인 안드로이드 설정
- the 수파베이스 구글 로그인 - 일반 설정.
구현
구현 섹션구글 로그인 안드로이드 구현 예제 앱의 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);}인증 흐름이 어떻게 작동하는지 설명합니다. General Setup 가이드의 How It Works 섹션.
For the complete code reference, see the Code 완전한 참조 섹션을 일반 설정 가이드에서 완료하세요..
중요한 주의 사항
제목이 '중요한 주의 사항'인 섹션Nonce 처리
제목이 'Nonce 처리'인 섹션Nonce 구현은 React Native Google Sign In 문서에서 설명하는 패턴을 따릅니다. Google Sign-In으로 가는 경로:
rawNonceSupabase는 __CAPGO_KEEP_1__을 해시화합니다.signInWithIdToken()- 해시화된 __CAPGO_KEEP_1__과 __CAPGO_KEEP_2__을 비교합니다.
rawNonce__CAPGO_KEEP_2__은 Google Sign-In에서 제공하는 ID 토큰에 포함된 SHA-256 해시입니다.nonceDigest(SHA-256 해시, 16진수 인코딩)으로 가는 경로 nonceDigest해시화된 __CAPGO_KEEP_1__과 __CAPGO_KEEP_2__을 비교합니다.nonceGoogle Sign-In API 매개 변수
자동 재시도
자동 재시도구현에는 자동 재시도 로직이 포함됩니다.
- JWT 검증이 첫 번째 시도에서 실패하면 로그아웃하고 다시 시도합니다.
- 캐시된 토큰이 잘못된 nonce를 가지고 있는 경우를 처리합니다.
- 재시도도 실패하면 오류가 반환됩니다.
문제 해결
문제 해결인증이 실패하면:
- 유효한 청중이 아닙니다.Google 클라이언트 ID가 Google Cloud Console과 Supabase에서 일치하는지 확인하세요.
- Nonce 불일치: 콘솔 로그를 확인하세요 - 함수는 자동으로 다시 시도하지만, 필요할 경우 수동 로그아웃을 먼저 하세요
- 토큰 유효성 검사 실패:
mode: 'online'initialize 함수에 - 리뷰 예시 앱 code 참조
Supabase Google Login on Android에서 계속 진행하세요
제목 ‘Supabase Google Login on Android에서 계속 진행하세요’Supabase Google Login on Android을 사용 중입니다 If you are using 인증 및 계정 흐름을 계획하고 연결하려면 @capgo/capacitor-social-login Using @capgo/capacitor-social-login Using @capgo/capacitor-social-login Using @capgo/capacitor-social-login Using @capgo/capacitor-passkey Using @capgo/capacitor-passkey Using @capgo/capacitor-native-biometric Using @capgo/capacitor-native-biometric 두 단계 인증 Two-factor authentication