Google-Login auf iOS
Eine Einrichtungsvorschlag mit den Installationsanweisungen und der vollständigen Markdown-Guideline für diesen Plugin kopieren.
Einleitung
Abschnitt mit dem Titel „Einleitung“In dieser Anleitung lernen Sie, wie Sie Google-Anmeldung mit Capgo Social Login für iOS einrichten können. Ich gehe davon aus, dass Sie bereits die allgemeine Einrichtungsanleitung.
Google-Anmeldung auf iOS verwenden
Abschnitt mit dem Titel „Google-Anmeldung auf iOS verwenden“In diesem Teil lernen Sie, wie Sie Google-Anmeldung in iOS einrichten können.
-
Erstellen Sie einen iOS-Kunden-ID in der Google-Konsole
-
Klicken Sie auf die Suchleiste
-
Suchen Sie nach
credentialsund klicken Sie auf dieAPIs and Serviceseine (Nummer 2 auf dem Screenshot)
-
Klicken Sie auf die
create credentials
-
Wählen Sie
OAuth client ID
-
Wählen Sie die
Application typezuriOS
-
Finden Sie die Bundle-ID
-
Xcode öffnen
-
Doppelklicken Sie auf
App
-
Stellen Sie sicher, dass Sie sich im
Targets -> App
-
Finden Sie Ihr
Bundle Identifier
-
Zurück zur Google-Konsole und fügen Sie Ihre
Bundle IdentifiereinBundle ID
-
-
Optionell, fügen Sie Ihrem
App Store IDoderTeam IDin die Client-ID ein, wenn Sie Ihre App im App Store veröffentlicht haben -
Nachdem Sie alle Details ausgefüllt haben, klicken Sie
create
-
Klicken Sie
OK
-
Öffnen Sie das neu erstellte iOS-Kundenkonto
-
Kopieren Sie die folgenden Daten
-
-
Öffnen Sie Xcode und finden Sie das
-
Datei
Info.plistInfo.plist-Datei im Xcode-Projekt-Explorer
-
Rechtsklick auf dieses Datei und öffnen Sie es als Quelle code
-
Am Ende Ihrer
PlistDatei sehen Sie ein</dict>Tag
-
Einfügen Sie den folgenden Fragment vor dem schließenden
</dict>Tag
<key>CFBundleURLTypes</key><array><dict><key>CFBundleURLSchemes</key><array><string>YOUR_DOT_REVERSED_IOS_CLIENT_ID</string></array></dict></array> -
Ändern Sie die
YOUR_DOT_REVERSED_IOS_CLIENT_IDauf den Wert, der in dem vorherigen Schritt kopiert wurde
-
Speichern Sie das Datei mit
Command + S
-
-
Ändern Sie das
AppDelegate.swift-
Öffnen Sie das AppDelegate
-
Einfügen
import GoogleSignInam Anfang der Datei
-
Finden Sie das
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:])Funktion
-
Ändern Sie die Funktion so
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)}
-
Speichern Sie das File mit
Command + S
-
-
Setup Google-Login in Ihrem JavaScript/TypeScript code
-
Importieren
SocialLoginundCapacitorimport { SocialLogin } from '@capgo/capacitor-social-login';import { Capacitor } from '@capacitor/core'; -
Rufen Sie die Methode initialize auf (dies sollte nur einmal aufgerufen werden)
Grundlegende Einrichtung (Online-Modus - empfohlen für die meisten Apps):
// onMounted is Vue specificonMounted(() => {SocialLogin.initialize({google: {iOSClientId: '673324426943-redacted.apps.googleusercontent.com',mode: 'online' // Default mode}})})Erweiterte Einrichtung mit zusätzlichen Client-IDs:
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'}})}) -
Implementieren Sie die Login-Funktion. Erstellen Sie einen Button und führen Sie folgenden code auf Klick aus
Für Online-Modus:
const res = await SocialLogin.login({provider: 'google',options: {}})// handle the response - contains user dataconsole.log(JSON.stringify(res))Für Offline-Modus:
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)
-
-
Testen Sie Ihre Anwendung
-
Ihre App erstellen und ausführen
cap sync -
Wenn Sie alles korrekt gemacht haben, sollten Sie den Google-Login-Flow ordnungsgemäß funktionieren sehen
-
Bekannte Probleme
Abschnitt mit dem Titel „Bekannte Probleme“Inkompatibilität des Privacy-Screen-Plugins
Abschnitt mit dem Titel „Inkompatibilität des Privacy-Screen-Plugins“Der Google-Login-Plugin ist inkompatibel mit @capacitor/privacy-screen. Wenn Sie beide Plugins gemeinsam verwenden, wird das Google-Login-Webview vom Datenschutzschirm unterbrochen.
Workaround: Rufen Sie await PrivacyScreen.disable(); vor dem Aufrufen der Login-Funktion:
import { PrivacyScreen } from '@capacitor/privacy-screen';import { SocialLogin } from '@capgo/capacitor-social-login';
await PrivacyScreen.disable();await SocialLogin.login({ provider: 'google', options: {}});Weiter von Google Login auf iOS
Wenn Sie "Google Login on iOS" zur Planung der Authentifizierung und Kontoflows verwenden, verbinden Sie es mitMit @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-social-login für die native Fähigkeit in Mit @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-social-login Wenn Sie "Google Login on iOS" verwenden für die native Fähigkeit in Mit @capgo/capacitor-social-login Mit @capgo/capacitor-social-login @capgo/capacitor-social-login für die Implementierungsdetails in @capgo/capacitor-social-login @capgo/capacitor-passkey für die Implementierungsdetails in @capgo/capacitor-passkey @capgo/capacitor-native-biometric für die Implementierungsdetails in @capgo/capacitor-native-biometric, und Zwei-Faktor-Authentifizierung für die Implementierungsdetails in Zwei-Faktor-Authentifizierung.