Lompat ke konten

Supabase Google Login pada Android

GitHub

Panduan ini akan membantu Anda mengintegrasikan Sign-In Google dengan Supabase Authentication pada Android. Diperkirakan Anda telah menyelesaikan:

Bagian berjudul “Implementasi”

Implementasi lengkap tersedia di

aplikasi contoh’s Panduan ini akan membantu Anda mengintegrasikan Sign-In Google dengan Supabase Authentication pada Android. Diperkirakan Anda telah menyelesaikan: Pengaturan Login Google Android dan Pengaturan Umum Google Login - Supabase. supabaseAuthUtils.ts file. Panduan ini menjelaskan konsep utama dan cara menggunakan itu.

The authenticateWithGoogleSupabase fungsi ini mengelola seluruh alur autentikasi:

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

Untuk penjelasan rinci tentang bagaimana alur autentikasi bekerja, termasuk penggunaan nonce, validasi JWT, dan masuk ke Supabase, lihat bagian Cara Kerjanya di Panduan Pengaturan Umum.

Untuk referensi lengkap code, lihat bagian Referensi Lengkap Code di Panduan Pengaturan Umum.

Implementasi nonce mengikuti pola dari dokumentasi Google Sign In untuk React Native:

  • rawNonce berpindah ke Supabase’s signInWithIdToken()
  • Supabase membuat hash dari rawNonce dan membandingkannya dengan nonceDigest yang termasuk dalam token ID dari Google Sign-In
  • nonceDigest (hash SHA-256, kode hex) berpindah ke nonce parameter dalam API Google Sign-In

Implementasinya termasuk logika retry otomatis:

  • Jika validasi JWT gagal pada usaha pertama, maka keluar dan mencoba sekali lagi
  • Ini menangani kasus-kasus di mana token yang disimpan mungkin memiliki nonce yang salah
  • Jika usaha retry juga gagal, maka error dikembalikan

Jika autentikasi gagal:

  • Audien tidak valid: Periksa apakah ID Klien Google Anda sesuai di kedua Google Cloud Console dan Supabase
  • Perbedaan nonce: Periksa log konsol - fungsi akan secara otomatis mencoba lagi, tetapi Anda dapat keluar manual jika diperlukan
  • Validasi token gagal: Pastikan Anda menggunakan mode: 'online' dalam panggilan inisialisasi untuk mendapatkan idToken
  • Review contoh aplikasi __CAPGO_KEEP_0__ example app code Lanjutkan dari Supabase Google Login on Android

untuk merencanakan autentikasi dan alur akun, hubungkannya dengan Section titled “Lanjutkan dari Supabase Google Login on Android” Jika Anda menggunakan Supabase Google Login on Android Menggunakan @capgo/capacitor-login-media sosial untuk kemampuan asli dalam Menggunakan @capgo/capacitor-login-media sosial, @capgo/capacitor-login-media sosial untuk detail implementasi dalam @capgo/capacitor-login-media sosial, @capgo/capacitor-passkey untuk detail implementasi dalam @capgo/capacitor-passkey, @capgo/capacitor-biometrik asli untuk detail implementasi dalam @capgo/capacitor-biometrik asli, dan Autentikasi dua faktor untuk detail implementasi dalam Autentikasi dua faktor.