Saltare al contenuto

Google Login su iOS

GitHub

In questo guide, imparerai a configurare l'accesso Google con Capgo Social Login per iOS. Io suppongo che tu abbia già letto la guida di configurazione generale.

In questa parte, imparerai a configurare l'accesso Google in iOS.

  1. Creare un ID client iOS nel console di Google

    1. Clicca sulla barra di ricerca

      Barra di ricerca della console di Google
    2. Cerca e clicca sul credentials e clicca sul APIs and Services uno (numero 2 nella schermata)

      Risultati della ricerca mostranti l'opzione delle credenziali con API e Servizi evidenziati
    3. Cliccare sul create credentials

      Pulsante di creazione delle credenziali nel Console di Google
    4. Selezionare OAuth client ID

      L'opzione ID del client OAuth nella menu di creazione delle credenziali
    5. Selezionare il Application type Applicazione iOS

      Selezione del tipo di applicazione con l'opzione iOS evidenziata
    6. Trovare l'ID del bundle

      1. Aprire Xcode

      2. Doppio clic su App

        Target dell'app in navigatore dei progetti di Xcode
      3. Assicurati di essere su Targets -> App

        Scezione Targets in Xcode con App selezionata
      4. Cerca il tuo Bundle Identifier

        Campo Identificatore Bundle in impostazioni progetto Xcode
      5. Torna indietro alla Console di Google e incolla il tuo Bundle Identifier nel campo Identificatore Bundle nella forma di creazione del client iOS di Google Console Bundle ID

        Opzionalmente, aggiungi il tuo
    7. o App Store ID nella Console di Google ID del client iOS se hai pubblicato l'app sullo Store App Team ID Dopo aver riempito tutti i dettagli, clicca

    8. Creatore pulsante in fondo alla forma di creazione del client iOS create

      O
    9. Clicca OK

      Bottone OK nella finestra di conferma dell'ID client creato
    10. Apre il nuovo ID client iOS creato

      ID client iOS appena creato nella lista delle credenziali
    11. Copia i seguenti dati

      Dati dell'ID client mostranti l'ID client e l'ID client inverso da copiare
  2. Modifica il file Info.plist della tua app

    1. Apre Xcode e trova il Info.plist file

      il file Info.plist nel navigatore del progetto Xcode
    2. Clicca con il tasto destro su questo file e aprilo come fonte code

      Menu a tendina con l'opzione Apri come fonte Code
    3. In fondo al tuo Plist file, vedrai un </dict> tag

      Chiusura del tag di dizionario in Info.plist
    4. Inserisci il seguente frammento prima della chiusura </dict> tag

      Info.plist con schemi di URL code inseriti prima della chiusura della tag di dizionario
      <key>CFBundleURLTypes</key>
      <array>
      <dict>
      <key>CFBundleURLSchemes</key>
      <array>
      <string>YOUR_DOT_REVERSED_IOS_CLIENT_ID</string>
      </array>
      </dict>
      </array>
    5. Cambia il YOUR_DOT_REVERSED_IOS_CLIENT_ID a il valore copiato nel passaggio precedente

      Info.plist con il client ID reale inserito nei schemi di URL
    6. Salva il file con Command + S

  3. Modifica il AppDelegate.swift

    1. Apri il file AppDelegate

      Il file AppDelegate.swift nel navigatore del progetto Xcode
    2. Inserisci import GoogleSignIn All'inizio del file

      Il file AppDelegate.swift con l'import di GoogleSignIn aggiunto
    3. Trova la func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:]) La funzione

      La funzione di apertura dell'applicazione openURL in AppDelegate
    4. Modifica la funzione per farla assomigliare a questa

      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)
      }
      Funzione di apertura dell'applicazione modificata con gestione di GoogleSignIn
    5. Salva il file con Command + S

  4. Configura il login con Google nel tuo JavaScript/TypeScript code

    1. Importa SocialLogin E Capacitor

      import { SocialLogin } from '@capgo/capacitor-social-login';
      import { Capacitor } from '@capacitor/core';
    2. Page/area: Sito web di marketing Capgo. Ruolo: Etichetta breve UI o elemento di navigazione. Visto in: pagina trust.astro. Chiave di messaggio `e` (E).

      Copia nel portapenne

      // onMounted is Vue specific
      onMounted(() => {
      SocialLogin.initialize({
      google: {
      iOSClientId: '673324426943-redacted.apps.googleusercontent.com',
      mode: 'online' // Default mode
      }
      })
      })

      Configurazione base (modalità online - consigliata per la maggior parte degli app):

      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. Implementa la funzione di accesso. Crea un pulsante e esegui il seguente code al click

      Per modalità online:

      const res = await SocialLogin.login({
      provider: 'google',
      options: {}
      })
      // handle the response - contains user data
      console.log(JSON.stringify(res))

      Per modalità offline:

      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. Testa la tua applicazione

    1. Costruisci l'app e eseguila cap sync

    2. Se hai fatto tutto correttamente, dovresti vedere il flusso di accesso Google che funziona correttamente

      Demo del flusso di accesso Google su iOS che mostra il processo di registrazione e l'autenticazione riuscita

Il plugin di accesso Google è incompatibile con @capacitor/privacy-screen. Quando si utilizzano entrambi i plugin insieme, il webview di accesso Google verrà interrotto dallo schermo di privacy.

Soltuzione di emergenza: Chiamare await PrivacyScreen.disable(); contexto: Chiamare (HTML testo frammento da una stringa di Capgo UI più lunga (chiave genitore `appflow_migration_step2`). Pagina/area: Appflow comparazione / migrazione copia di marketing. Ruolo: Copia di sito di frase. Visto in: pagina ionic-appflow.astro. Preservare esattamente i termini di prodotto/marca e sviluppatore di Capgo. Chiave di messaggio `appflow_migration_step2` (Appflow Migration Step2).

import { PrivacyScreen } from '@capacitor/privacy-screen';
import { SocialLogin } from '@capgo/capacitor-social-login';
await PrivacyScreen.disable();
await SocialLogin.login({
provider: 'google',
options: {}
});

Copiare nel portapenna (copia e incolla in clipboard, ma non è tradotto per mantenere la coerenza con il contesto di copia e incolla del testo originale.)

Sezione intitolata “Continua con Google Login su iOS”

Se stai utilizzando Google Login su iOS per pianificare l'autenticazione e le flussi di account, connettilo con Utilizza @capgo/capacitor-login-social per la capacità nativa in Utilizza @capgo/capacitor-login-social @capgo/capacitor-login-social per il dettaglio di implementazione in @capgo/capacitor-login-social @capgo/capacitor-passkey per il dettaglio di implementazione in @capgo/capacitor-passkey @capgo/capacitor-biometria-nativa per il dettaglio di implementazione in @capgo/capacitor-biometria-nativa Autenticazione a due fattori per la dettagliata implementazione in Autenticazione a due fattori.