Google-Anmeldung auf iOS
Kopieren Sie einen Einrichtungsbefehl mit den Installationsanweisungen und der vollständigen Markdown-Dokumentation für diesen Plugin.
Einführung
Abschnitt mit dem Titel „Einführung“In dieser Anleitung lernen Sie, wie Sie Google Login 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: "Google-Anmeldung auf iOS verwenden"In diesem Abschnitt lernen Sie, wie Sie die Google-Anmeldung in iOS einrichten.
-
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 (Zahl 2 auf dem Screenshot)
-
Klicken Sie auf die
create credentials
-
Auswählen
OAuth client ID
-
Wählen Sie die
Application typefüriOS
-
Finden Sie die Bundle-ID
-
Xcode öffnen
-
Doppelklicken Sie auf
App
-
Stellen Sie sicher, dass Sie sich im
Targets -> App
-
Entdecken Sie Ihren
Bundle Identifier
-
Gehen Sie zurück zur Google-Konsole und fügen Sie Ihren
Bundle Identifierin dasBundle ID
-
-
Optional können Sie Ihren
App Store IDoderTeam IDin die Client-ID einfügen, wenn Sie Ihre App bereits im App Store veröffentlicht haben -
Nachdem Sie alle Details ausgefüllt haben, klicken Sie auf
create
-
Klicken Sie auf
OK
-
Öffnen Sie den neu erstellten iOS-Kunden
-
Kopieren Sie die folgenden Daten
-
-
Ändern Sie die Einstellungen Ihres Apps Info.plist
-
Öffnen Sie Xcode und finden Sie das
Info.plistDatei
-
Recht klicken Sie auf diese Datei und öffnen Sie sie als Quellcode code
-
Am unteren 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 den
YOUR_DOT_REVERSED_IOS_CLIENT_IDauf den Wert, der im vorherigen Schritt kopiert wurde
-
Speichern Sie das Datei mit
Command + S
-
-
Ändern Sie die
AppDelegate.swift-
Öffnen Sie das AppDelegate
-
Einfügen
import GoogleSignInam Anfang der Datei
-
Finden Sie die
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:])Funktion
-
Ändern Sie die Funktion, damit sie wie folgt aussieht
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 die Datei mit
Command + S
-
-
Setup Google login in your 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 Konfiguration (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 Konfiguration 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'}})}) -
Implement the login function. Create a button and run the following code on click
For online mode: ist nicht übersetzt, da es in der Liste der protectedTokens enthalten ist.
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
-
Bauen Sie Ihre App und starten Sie sie
cap sync -
Wenn Sie alles richtig gemacht haben, sollten Sie das Google-Login-Flow korrekt funktionieren sehen
-
Bekannte Probleme
Abschnitt mit dem Titel "Bekannte Probleme"Inkompatibilität des Privacy-Screen-Plugins
Abschnitt: Inkompatibilität des Privacy-Screen-PluginsDas Google-Login-Plugin ist mit dem @capacitor/privacy-screenWenn Sie beide Plugins gemeinsam verwenden, wird das Google-Login-WebView durch den Privacy-Screen unterbrochen.
Workaround: Aufrufen 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: {}});Fortsetzen von Google Login auf iOS
Abschnitt: Fortsetzen von Google Login auf iOSWenn Sie Google-Anmeldung auf iOS um die Authentifizierung und die Kontoflussplanung zu planen, verbinden Sie es mit Mit @capgo/capacitor-social-login für die native Fähigkeit in 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.