Google Login pada iOS
Copas prompt pengaturan dengan langkah instalasi dan panduan markdown lengkap untuk plugin ini.
Pendahuluan
Judul Bagian “Pendahuluan”Dalam panduan ini, Anda akan belajar cara mengatur Login Google dengan Capgo Login Sosial untuk iOS. Saya asumsikan Anda telah membaca panduan pengaturan umum..
Menggunakan login Google pada iOS
Judul Bagian “Menggunakan login Google pada iOS”Dalam bagian ini, Anda akan belajar cara mengatur login Google pada iOS.
-
Buat ID klien iOS di konsol Google
-
Klik di bar pencarian
-
Cari
credentialsdan klik diAPIs and Servicessatu (nomor 2 pada tangkapan layar)
-
Klik pada tombol
create credentials
-
Pilih
OAuth client ID
-
Pilih jenis
Application typeToiOS
-
Page/area: Live updates product page. Role: Short UI label or navigation item. Message key `live_update_dynamic_label_to` (Live Update Dynamic Label To).
-
Aplikasi
-
Pilih jenis aplikasi dengan opsi iOS yang ditebalkan
App
-
Pastikan Anda berada di
Targets -> App
-
Cari field
Bundle Identifier
-
Pulang ke Google Console 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 saja dibuat
-
Salin data berikut
-
-
Modifikasi file Info.plist aplikasi Anda
-
Buka Xcode dan cari file
Info.plistfile
-
Klik kanan pada file ini dan buka sebagai sumber code
-
Di bagian bawah file, Anda akan melihat tag
PlistTag penutup dictionary di file Info.plist</dict>Tag penutup dictionary di file Info.plist
-
Masukkan fragmen berikut sebelum penutup
</dict>tag penutup
<key>CFBundleURLTypes</key><array><dict><key>CFBundleURLSchemes</key><array><string>YOUR_DOT_REVERSED_IOS_CLIENT_ID</string></array></dict></array> -
Ganti
YOUR_DOT_REVERSED_IOS_CLIENT_IDke nilai yang disalin pada langkah sebelumnya
-
Simpan file dengan
Command + S
-
-
Ubahlah
AppDelegate.swift-
Buka file AppDelegate
-
Masukkan
import GoogleSignIndi atas file AppDelegate.swift dengan import GoogleSignIn ditambahkan
-
fungsi
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:])Fungsi aplikasi asli openURL di AppDelegate
-
Salin ke clipboard
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
-
Import
SocialLogindanCapacitorimport { SocialLogin } from '@capgo/capacitor-social-login';import { Capacitor } from '@capacitor/core'; -
Salin ke clipboard
Panggil metode inisialisasi (metode ini harus dipanggil hanya sekali)
// onMounted is Vue specificonMounted(() => {SocialLogin.initialize({google: {iOSClientId: '673324426943-redacted.apps.googleusercontent.com',mode: 'online' // Default mode}})})Salin ke clipboard
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. Buatlah tombol dan jalankan code berikut 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)
-
-
Tes aplikasi Anda
-
Buatlah aplikasi Anda dan jalankan
cap sync -
Jika Anda telah melakukan semuanya dengan benar, Anda seharusnya melihat alur login Google berjalan dengan baik
-
Masalah yang Dikenal
Judul Bagian “Masalah yang Dikenal”Inkompatibilitas Plugin Layar Privasi
Judul Bagian “Inkompatibilitas Plugin Layar Privasi”Plugin Login Google tidak kompatibel dengan @capacitor/privacy-screen. Ketika menggunakan kedua plugin bersamaan, layar webview login Google akan terganggu oleh layar privasi.
Solusi Alternatif: Panggil await PrivacyScreen.disable(); context:HTML text fragment from a longer Capgo UI string (parent key `appflow_migration_step2`). Page/area: Appflow comparison / migration marketing copy. Role: Website copy sentence. Seen in: page ionic-appflow.astro. Preserve Capgo product/brand and developer terms exactly. Message key `appflow_migration_step2` (Appflow Migration Step2).
import { PrivacyScreen } from '@capacitor/privacy-screen';import { SocialLogin } from '@capgo/capacitor-social-login';
await PrivacyScreen.disable();await SocialLogin.login({ provider: 'google', options: {}});Salin ke clipboard (Salin ke clipboard tidak tersedia untuk teks ini karena terdapat kode HTML yang tidak dapat disalin.)
Judul Bagian: Teruskan dari Google Login pada iOSJika Anda menggunakan Google Login pada iOS 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, dan @capgo/capacitor-native-biometric untuk detail implementasi di @capgo/capacitor-native-biometric Autorisasi Dua Faktor untuk detail implementasi di Autorisasi Dua Faktor.