Google Login auf iOS
Einen Einrichtungsvorschlag mit den Installationsanweisungen und der vollständigen Markdown-Dokumentation für diesen Plugin kopieren.
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-Login auf iOS
Abschnitt mit dem Titel “Google-Login auf iOS”In diesem Teil erfahren Sie, wie Sie Google-Login in iOS einrichten können.
-
Erstellen Sie einen iOS-Kunden-ID im Google-Konsolen
-
Klicken Sie auf die Suchleiste
-
Nach
credentialsund klicken Sie auf dieAPIs and Serviceseine (Zahl 2 auf dem Screenshot)
-
Klicken Sie auf den
create credentials
-
Wählen Sie
OAuth client ID
-
Wählen Sie das
Application typeZur Anwendungstypauswahl mit iOS-Option hervorgehobeniOS
-
Öffnen Sie Xcode
-
Doppelklicken Sie auf
-
App-Ziel in Xcode-Projekt-Explorer
App
-
Stellen Sie sicher, dass Sie sich auf
Targets -> App
-
Finden Sie Ihr
Bundle Identifier
-
Gehen Sie zurück zum Google-Konsolen und fügen Sie Ihren
Bundle Identifierin dasBundle ID
-
-
Optionell können Sie Ihren
App Store IDoderTeam IDin die Client-ID einfügen, wenn Sie Ihre App im App Store veröffentlicht haben -
Nachdem Sie alle Details ausgefüllt haben, klicken Sie auf
create
-
Klicken
OK
-
Öffnen Sie den neu erstellten iOS-Client
-
Folgende Daten kopieren
-
-
Ändern Sie die Info.plist Ihres Apps
-
Öffnen Sie Xcode und finden Sie das
Info.plistDatei
-
Recht klicken Sie auf diese Datei und öffnen Sie sie als Quelle code
-
Am unteren Ende Ihrer
PlistDatei sehen Sie ein</dict>Tag
-
Fügen Sie den folgenden Fragment vor dem Abschluss
</dict>Schluss
<key>CFBundleURLTypes</key><array><dict><key>CFBundleURLSchemes</key><array><string>YOUR_DOT_REVERSED_IOS_CLIENT_ID</string></array></dict></array> -
Auf die Zwischenablage kopieren
YOUR_DOT_REVERSED_IOS_CLIENT_IDÄndern Sie den
-
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 das Datei mit
Command + S
-
-
Einrichten Sie Google-Anmeldung in Ihrem JavaScript/TypeScript code
-
Importieren
SocialLoginundCapacitorimport { SocialLogin } from '@capgo/capacitor-social-login';import { Capacitor } from '@capacitor/core'; -
Aufrufen Sie die Initialisierungs-Methode (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 Anmeldefunktion. Erstellen Sie einen Button und führen Sie folgenden code bei einem 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
-
Bauen Sie Ihre App und führen Sie sie aus
cap sync -
Wenn Sie alles korrekt gemacht haben, sollten Sie das Google-Login-Flow korrekt funktionieren sehen
-
Known Probleme
Abschnitt mit dem Titel “Known Probleme”Unvereinbarkeit des Privacy-Screen-Plugins
Abschnitt mit dem Titel “Unvereinbarkeit des Privacy-Screen-Plugins”Das Google-Login-Plugin ist mit dem @capacitor/privacy-screen. Wenn Sie beide Plugins gemeinsam verwenden, wird die Google-Login-Webview durch den Datenschutzschirm unterbrochen.
Arbeitsumgehung: Aufrufen await PrivacyScreen.disable(); context
import { PrivacyScreen } from '@capacitor/privacy-screen';import { SocialLogin } from '@capgo/capacitor-social-login';
await PrivacyScreen.disable();await SocialLogin.login({ provider: 'google', options: {}});vor dem Aufrufen der Login-Funktion:
Abschnitt mit dem Titel “Weiter mit Google Login auf iOS”Wenn Sie Google Login auf iOS für die Planung der Authentifizierung und der Kontoflows verwenden, verbinden Sie es mit Verwenden Sie @capgo/capacitor-social-login für die native Fähigkeit in Verwenden Sie @capgo/capacitor-social-login Verwenden Sie @capgo/capacitor-social-login für die Implementierungsdetails in @capgo/capacitor-social-login Verwenden Sie @capgo/capacitor-passkey für die Implementierungsdetails in @capgo/capacitor-passkey Verwenden Sie @capgo/capacitor-native-biometric für die Implementierungsdetails in @capgo/capacitor-native-biometric und Zweifaktor-Authentifizierung für die Implementierungsdetails in Zweifaktor-Authentifizierung.