Langkah ke Konten

Supabase Google Login pada Android

GitHub

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

Implementasi lengkap tersedia di file aplikasi contoh. Panduan ini menjelaskan konsep utama dan cara menggunakan fitur ini. Menggunakan Bantuan Autentikasi supabaseAuthUtils.ts Bagian berjudul “Menggunakan Bantuan Autentikasi”

Fungsi ini mengatur alur autentikasi secara keseluruhan:

Salin ke clipboard

Copy to clipboard authenticateWithGoogleSupabase Copy to clipboard

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 aliran autentikasi bekerja, termasuk penghasilan nonce, validasi JWT, dan masuk ke Supabase, lihat Bab Bagaimana Cara Kerjanya di Panduan Pengaturan Umum.

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

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

  • rawNonce pergi 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, hex-encoded) pergi ke nonce parameter dalam API Google Sign-In

Implementasi ini termasuk logika retry otomatis:

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

Jika autentikasi gagal:

  • Penonton Tidak Sah: Pastikan ID Klien Google Anda sesuai di kedua Google Cloud Console dan Supabase
  • Kesalahan Nonce: Periksa log konsol - fungsi akan secara otomatis mencoba lagi, tetapi Anda dapat keluar secara manual jika perlu
  • Validasi Token Gagal: Pastikan Anda menggunakan mode: 'online' di panggilan inisialisasi untuk mendapatkan idToken
  • Review contoh aplikasi __CAPGO_KEEP_0__ example app code untuk referensi

Teruskan dari Supabase Google Login pada Android

Bab berjudul “Teruskan dari Supabase Google Login pada Android”

Jika Anda menggunakan Supabase Google Login pada Android untuk merencanakan autentikasi dan alur akun, hubungkannya dengan Menggunakan @capgo/capacitor-social-login untuk kemampuan native di Menggunakan @capgo/capacitor-social-login, @capgo/capacitor-social-login untuk detail implementasi di @capgo/capacitor-social-login, @capgo/capacitor-passkey untuk detail implementasi di @capgo/capacitor-passkey, @capgo/capacitor-native-biometric untuk detail implementasi di @capgo/capacitor-native-biometric, dan Autentikasi Dua Faktor untuk detail implementasi di Autentikasi Dua Faktor.