Zum Inhalt springen

Google Login auf iOS

GitHub

In dieser Anleitung lernen Sie, wie Sie Google-Login mit Capgo Social Login für iOS einrichten. Ich gehe davon aus, dass Sie bereits die allgemeine Einrichtungsanleitung.

In diesem Teil lernen Sie, wie Sie Google-Login in iOS einrichten.

  1. Einen iOS-Kunden-ID in der Google-Konsole erstellen

    1. Auf die Suchleiste klicken

      Suchleiste der Google-Konsole
    2. Nach credentials und auf die APIs and Services eine (Zahl 2 auf dem Screenshot)

      Suchergebnisse mit der Option für Anmeldedaten, APIs und Dienste hervorgehoben
    3. Klicken Sie auf den create credentials

      Schaltfläche "Erstellen Sie Anmeldeinformationen" in Google Console
    4. Wählen Sie OAuth client ID

      Option "OAuth-Kunden-ID" in der Anmeldeinformationen-Erstellungsmenü
    5. Wählen Sie die Application type Anwendungstypauswahl mit iOS-Option hervorgehoben iOS

      Finden Sie die Bundle-ID
    6. Öffnen Sie Xcode

      1. Doppelklicken Sie auf

      2. App-Ziel in Xcode-Projekt-Explorer App

        Zum
      3. Stellen Sie sicher, dass Sie sich auf Targets -> App

        Abschnitt Targets in Xcode mit App ausgewählt
      4. Finden Sie Ihren Bundle Identifier

        Bundle-Identifier-Feld in den Xcode-Projekt-Einstellungen
      5. Zurück zur Google-Konsole und fügen Sie Ihren Bundle Identifier hinzu Bundle ID

        zum
    7. Bundle-ID-Feld in der Google-Konsole iOS-Kundenanlage App Store ID Optional, fügen Sie Ihren Team ID oder

    8. context: HTML-Textfragment aus einem längeren Capgo-UI-String (Elternschlüssel `alternatives_cta_questions`). Seite/Bereich: Vergleichsseite für lebendige Capgo-Alternativen. Rolle: Langen Marketing- oder Rechtsparagraphen. Gesehen in: Seite alternatives.astro. Produkt- und Markenbezeichnungen von Capgo sowie Entwicklertitel bleiben genau erhalten. Nachrichtenschlüssel `alternatives_cta_questions` (Alternativen-CTA-Fragen). | HTML-Textfragment aus einem längeren Capgo-UI-String (Elternschlüssel `appflow_cta_questions`). Seite/Bereich: Appflow-Vergleichs-/Migrationsmarketing. Rolle: Langen Marketing- oder Rechtsparagraphen. Gesehen in: Seite ionic-appflow.astro. Produkt- und Markenbezeichnungen von Capgo sowie Entwicklertitel bleiben genau erhalten. Nachrichtenschlüssel `appflow_cta_questions` (Appflow-CTA-Fragen). | HTML-Textfragment aus einem längeren Capgo-UI-String (Elternschlüssel `capwesome_cta_questions`). Seite/Bereich: Capawesome-Vergleichsseite. Rolle: Langen Marketing- oder Rechtsparagraphen. Gesehen in: Seite capwesome.astro. Produkt- und Markenbezeichnungen von Capgo sowie Entwicklertitel bleiben genau erhalten. Nachrichtenschlüssel `capwesome_cta_questions` (Capwesome-CTA-Fragen). | Seite/Bereich: Beratungsdienste-Seite. Rolle: Abschnittsunterschrift oder Slogan. Gesehen in: Seite consulting.astro. Produkt- und Markenbezeichnungen von Capgo sowie Entwicklertitel bleiben genau erhalten. Nachrichtenschlüssel `consulting_faq_subtitle` (Beratungsdienste-Fragebogen-Unterschrift). | Seite/Bereich: Appflow-Vergleichs-/Migrationsmarketing. Rolle: Kurzer UI-Label oder Navigationselement. Gesehen in: Seite ionic-appflow.astro, Seite ionic-enterprise-plugins.astro, Seite Lösungen/ionic-enterprise-plugins.astro. Nachrichtenschlüssel `appflow_plugins_or` (Appflow-Plugins-oder) create

      hinzu, wenn Sie Ihre App im App Store veröffentlicht haben
    9. Klicken OK

      OK-Button auf der Bestätigungsanzeige für den erstellten Client-ID
    10. Öffnen Sie den neu erstellten iOS-Client

      Neu erstellter iOS-Client in der Liste der Anmeldedaten
    11. Folgende Daten kopieren

      Anzeige der Client-ID-Daten mit Client-ID und umgekehrter Client-ID zum Kopieren
  2. Passen Sie die Info.plist Ihres Apps an

    1. Öffnen Sie Xcode und finden Sie das Info.plist Datei

      Info.plist-Datei im Xcode-Projekt-Navigator
    2. Recht klicken Sie auf diese Datei und öffnen Sie sie als Quelle code

      Rechtsklick-Menü mit Option "Als Quelle öffnen Code"
    3. Am unteren Ende Ihrer Plist Datei sehen Sie ein </dict> Tag

      Schließende dict-Tags in der Info.plist-Datei
    4. Fügen Sie den folgenden Fragment vor dem Abschluss </dict> Schluss

      tag ein Info.plist mit URL-Schemes code vor Abschluss des Schlüsselworts
      <key>CFBundleURLTypes</key>
      <array>
      <dict>
      <key>CFBundleURLSchemes</key>
      <array>
      <string>YOUR_DOT_REVERSED_IOS_CLIENT_ID</string>
      </array>
      </dict>
      </array>
    5. Ändern Sie den YOUR_DOT_REVERSED_IOS_CLIENT_ID auf den Wert, der in der vorherigen Schritt kopiert wurde

      Info.plist mit dem tatsächlichen umgekehrten Client-ID eingefügt in URL-Schemes
    6. Speichern Sie das Datei mit Command + S

  3. Ändern Sie die AppDelegate.swift

    1. Öffnen Sie das AppDelegate

      AppDelegate.swift-Datei im Xcode-Projekt-Navigator
    2. Einfügen import GoogleSignIn Am Anfang der Datei

      AppDelegate.swift mit GoogleSignIn import hinzugefügt
    3. Finden Sie die func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:]) Funktion

      Die ursprüngliche Anwendung öffnet die URL-Funktion in AppDelegate
    4. Ä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 call
      var handled: Bool
      handled = GIDSignIn.sharedInstance.handle(url)
      if handled {
      return true
      }
      return ApplicationDelegateProxy.shared.application(app, open: url, options: options)
      }
      Modifizierte Anwendung öffne URL-Funktion mit GoogleSignIn-Handling
    5. Speichere das Datei mit Command + S

  4. Einstellung von Google-Anmeldung in Ihrem JavaScript/TypeScript code

    1. Importiere SocialLogin und Capacitor

      import { SocialLogin } from '@capgo/capacitor-social-login';
      import { Capacitor } from '@capacitor/core';
    2. Aufrufen Sie die Initialisierungs-Methode (dies sollte nur einmal aufgerufen werden)

      Grundlegende Einrichtung (Online-Modus - empfohlen für die meisten Apps):

      // onMounted is Vue specific
      onMounted(() => {
      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 support
      iOSClientId: 'YOUR_IOS_CLIENT_ID', // Required: from step 1
      iOSServerClientId: 'YOUR_WEB_CLIENT_ID', // Optional: same as webClientId, needed for some advanced features
      mode: 'online' // 'online' or 'offline'
      }
      })
      })
    3. 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 data
      console.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 mode
      console.log('Server auth code:', res.result.serverAuthCode)
  5. Testen Sie Ihre Anwendung

    1. Bauen Sie Ihre App und führen Sie sie aus cap sync

    2. Wenn Sie alles korrekt gemacht haben, sollten Sie das Google-Anmeldevorgang richtig funktionieren sehen

      Demo des Google-Anmeldevorgangs auf iOS, der sich beim Anmelden und der erfolgreichen Authentifizierung befindet

Das Google-Login-Plugin ist mit dem @capacitor/privacy-screen. Wenn Sie beide Plugins gemeinsam verwenden, wird die Google-Login-Webview durch die Datenschutzschutzschirm unterbrochen.

Workaround: 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: {}
});

Zurücksetzen in die Zwischenablage (Clipboard) kopieren (Copy to clipboard) ist nicht verfügbar in diesem Kontext. Bitte versuchen Sie es mit "Weiter mit Google Login auf iOS" (Keep going from Google Login on iOS).

Abschnitt mit dem Titel “Weitermachen mit Google Login auf iOS”

Wenn Sie “Google Login on iOS” verwenden Google Login auf iOS um die Authentifizierung und die Kontenflüsse zu planen, verbinden Sie es mit Verwenden Sie @capgo/capacitor-social-login Verwenden Sie @capgo/capacitor-social-login für die native Fähigkeit in Verwenden Sie @capgo/capacitor-social-login @capgo/capacitor-social-login Verwenden Sie @capgo/capacitor-social-login für die Implementierungsdetails in @capgo/capacitor-social-login @capgo/capacitor-passkey Verwenden Sie @capgo/capacitor-passkey für die Implementierungsdetails in @capgo/capacitor-passkey @capgo/capacitor-native-biometric Verwenden Sie @capgo/capacitor-native-biometric für die Implementierungsdetails in @capgo/capacitor-native-biometric und Zweifaktor-Authentifizierung Zur Implementierungsdetail in Zweifaktor-Authentifizierung.