Google Login pada iOS
Salin prompt pengaturan dengan langkah instalasi dan panduan markdown lengkap untuk plugin ini.
Pendahuluan
Bab berjudul “Pendahuluan”Dalam panduan ini, Anda akan belajar cara mengatur Login Google dengan Capgo Login Sosial untuk iOS. Saya asumsikan bahwa Anda telah membaca panduan pengaturan umum. Pengaturan umum.
Menggunakan login Google di iOS
Bab berjudul “Menggunakan login Google di iOS”Dalam bagian ini, Anda akan belajar cara mengatur login Google di iOS.
-
Membuat ID klien iOS di konsol Google
-
Klik di bar pencarian
-
Cari dan klik pada
credentialssatu (nomor 2 pada tangkapan layar)APIs and ServicesHasil pencarian menampilkan opsi kredential dengan APIs dan Services yang ditebalkan
-
Tombol Create credentials di Console Google
create credentials
-
Opsi OAuth client ID di menu pembuatan kredential
OAuth client ID
-
untuk
Application typePilihan jenis aplikasi dengan opsi iOS yang ditebalkaniOS
-
Temukan ID Paket
-
Buka Xcode
-
Klik dua kali pada
App
-
Pastikan Anda berada di
Targets -> App
-
Temukan
Bundle Identifier
-
Kembali ke Console Google dan tempelkan
Bundle IdentifierkeBundle ID
-
-
Opsional, tambahkan
App Store IDatauTeam IDke dalam ID klien jika Anda telah menerbitkan aplikasi ke App Store -
Setelah mengisi semua detail, klik
create
-
Klik
OK
-
Buka klien iOS yang baru dibuat
-
Salin data berikut ini
-
-
Buka Xcode dan cari file
-
file
Info.plistInfo.plist file di navigator proyek Xcode
-
Menu klik kanan menampilkan opsi Buka Sebagai Sumber code
-
Di bagian bawah file Anda, Anda akan melihat sebuah tag
Plisttag penutup di file Info.plist</dict>Tag penutup di file Info.plist
-
Info.plist dengan skema URL __CAPGO_KEEP_0__ yang dimasukkan sebelum tag penutup
</dict>Salin ke clipboard
<key>CFBundleURLTypes</key><array><dict><key>CFBundleURLSchemes</key><array><string>YOUR_DOT_REVERSED_IOS_CLIENT_ID</string></array></dict></array> -
Peringatan
YOUR_DOT_REVERSED_IOS_CLIENT_IDInfo.plist dengan skema URL yang sebenarnya yang dimasukkan ke dalam skema URL
-
Simpan file dengan
Command + S
-
-
Ubah
AppDelegate.swift-
Buka file AppDelegate
-
Tulis
import GoogleSignIndi atas file AppDelegate.swift dengan import GoogleSignIn ditambahkan
-
at the top of the file
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:])fungsi
-
Ubah fungsi untuk terlihat seperti ini
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:]) -> Bool {// Called when the app was launched with a url. Feel free to add additional processing here,// but if you want the App API to support tracking app url opens, make sure to keep this callvar handled: Boolhandled = GIDSignIn.sharedInstance.handle(url)if handled {return true}return ApplicationDelegateProxy.shared.application(app, open: url, options: options)}
-
Simpan file dengan
Command + S
-
-
Setup login Google di JavaScript/TypeScript code
-
Impor
SocialLogindanCapacitorimport { SocialLogin } from '@capgo/capacitor-social-login';import { Capacitor } from '@capacitor/core'; -
Panggil metode inisialisasi (ini harus dipanggil hanya sekali)
Pengaturan dasar (mode online - disarankan untuk aplikasi yang paling banyak):
// onMounted is Vue specificonMounted(() => {SocialLogin.initialize({google: {iOSClientId: '673324426943-redacted.apps.googleusercontent.com',mode: 'online' // Default mode}})})Pengaturan lanjutan dengan ID klien tambahan:
onMounted(() => {SocialLogin.initialize({google: {webClientId: 'YOUR_WEB_CLIENT_ID', // Optional: for web platform supportiOSClientId: 'YOUR_IOS_CLIENT_ID', // Required: from step 1iOSServerClientId: 'YOUR_WEB_CLIENT_ID', // Optional: same as webClientId, needed for some advanced featuresmode: 'online' // 'online' or 'offline'}})}) -
Implementasikan fungsi login. Buat tombol dan jalankan code ketika diklik
Untuk mode online:
const res = await SocialLogin.login({provider: 'google',options: {}})// handle the response - contains user dataconsole.log(JSON.stringify(res))Untuk mode offline:
const res = await SocialLogin.login({provider: 'google',options: {forceRefreshToken: true // Recommended for offline mode}})// res contains serverAuthCode, not user data// Send serverAuthCode to your backend to get user information// Do not call SocialLogin.refresh() in offline modeconsole.log('Server auth code:', res.result.serverAuthCode)
-
-
Uji aplikasi Anda
-
Buat aplikasi Anda dan jalankan
cap sync -
Jika Anda telah melakukan semuanya dengan benar, Anda seharusnya melihat aliran login Google berjalan dengan baik
-
Masalah yang Dikenal
Bagian berjudul “Masalah yang Dikenal”Kompabilitas Plugin Layar Privasi
Bagian berjudul “Kompabilitas Plugin Layar Privasi”Plugin Login Google tidak kompatibel dengan @capacitor/privacy-screenKetika menggunakan kedua plugin bersamaan, layar webview login Google akan terganggu oleh layar privasi.
Solusi Alternatif: Tunggu await PrivacyScreen.disable(); sebelum memanggil fungsi login:
import { PrivacyScreen } from '@capacitor/privacy-screen';import { SocialLogin } from '@capgo/capacitor-social-login';
await PrivacyScreen.disable();await SocialLogin.login({ provider: 'google', options: {}});Lanjutkan dari Google Login pada iOS
Bagian berjudul “Lanjutkan dari Google Login pada iOS”Jika Anda menggunakan Google Login pada iOS untuk merencanakan autentikasi dan alur akun, hubungkannya dengan Menggunakan @capgo/capacitor-social-login untuk kemampuan asli dalam Menggunakan @capgo/capacitor-social-login, @capgo/capacitor-social-login untuk detail implementasi dalam @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.