Google Login unter iOS
Kopiere einen Setup-Prompt mit den Installationsschritten und dem vollständigen Markdown-Guide für dieses Plugin.
Einführung
Abschnitt „Einführung“In diesem Leitfaden erfahren Sie, wie Sie Google Login mit Capgo Social Login für iOS einrichten. Ich gehe davon aus, dass Sie bereits die Allgemeine Setup-Anleitung.
Google Login unter iOS nutzen
Abschnitt mit dem Titel „Google Login auf iOS verwenden“In diesem Teil lernst du, wie du Google Login in iOS einrichtest.
-
Erstelle eine iOS-Client-ID in der Google Console
-
Klicke auf die Suchleiste
-
Suche nach
credentialsund klicke aufAPIs and Serviceseins (Nummer 2 auf dem Screenshot)
-
Klicke auf die
create credentials
-
Wähle
OAuth client ID
-
Wähle die
Application typezuiOS
-
Bundle-ID finden
-
Xcode öffnen
-
Doppelklicke auf
App
-
Stelle sicher, dass du dich im
Targets -> App
-
Finde dein
Bundle Identifier
-
Zurück zur Google Console und deine
Bundle IdentifierinBundle ID
-
-
Optional füge deine
App Store IDoderTeam IDin die Client-ID ein, falls du deine App im App Store veröffentlicht hast -
Nachdem du alle Details ausgefüllt hast, klicke auf
create
-
Klicken
OK
-
Öffne den neu erstellten iOS-Client
-
Kopiere die folgenden Daten
-
-
Info.plist deiner App anpassen
-
Öffne Xcode und suche die
Info.plistDatei
-
Rechtsklick auf diese Datei und als code öffnen
-
Am unteren Rand Ihrer
PlistDatei sehen Sie ein</dict>Tag
-
Fügen Sie das folgende Fragment direkt 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 das
YOUR_DOT_REVERSED_IOS_CLIENT_IDauf den im vorherigen Schritt kopierten Wert
-
Speichere die Datei mit
Command + S
-
-
Ändere die
AppDelegate.swift-
Öffne die AppDelegate
-
Einfügen
import GoogleSignInam Anfang der Datei
-
Suche nach
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:])Funktion
-
Ändere die Funktion wie folgt
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)}
-
Speichere die Datei mit
Command + S
-
-
Google Login in deinem JavaScript/TypeScript code einrichten
-
Importieren
SocialLoginundCapacitorimport { SocialLogin } from '@capgo/capacitor-social-login';import { Capacitor } from '@capacitor/core'; -
Rufe die initialize-Methode auf (dies sollte nur einmal geschehen)
Basis-Setup (Online-Modus – für die meisten Apps empfohlen):
// onMounted is Vue specificonMounted(() => {SocialLogin.initialize({google: {iOSClientId: '673324426943-redacted.apps.googleusercontent.com',mode: 'online' // Default mode}})})Erweitertes Setup 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'}})}) -
Implementiere die Login-Funktion. Erstelle einen Button und führe beim Klick folgenden code aus
Für den Online-Modus:
const res = await SocialLogin.login({provider: 'google',options: {}})// handle the response - contains user dataconsole.log(JSON.stringify(res))Für den 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)
-
-
Teste deine App
-
App bauen und ausführen
cap sync -
Wenn alles korrekt konfiguriert ist, sollte der Google-Login-Flow einwandfrei funktionieren.
-
Bekannte Probleme
Abschnitt mit dem Titel „Bekannte Probleme“Inkompatibilität mit dem Privacy Screen Plugin
Abschnitt mit dem Titel „Inkompatibilität mit dem Privacy Screen Plugin“Das Google Login Plugin ist inkompatibel mit @capacitor/privacy-screen. Wenn beide Plugins gleichzeitig verwendet werden, wird der Google-Login-Webview durch den Privacy Screen unterbrochen.
Workaround: Rufe await PrivacyScreen.disable(); vor dem Aufruf 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: {}});Google Login unter iOS fortsetzen
Abschnitt mit dem Titel „Weitermachen vom Google Login auf iOS“Wenn du es nutzt Google Login unter iOS Um Authentifizierungs- und Account-Flows zu planen, verbinde es mit @capgo/capacitor-social-login verwenden für die native Funktion bei der Verwendung von @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 zur Zwei-Faktor-Authentifizierung.