Login Google sur iOS
Copiez une invite de commande avec les étapes d'installation et la guide markdown complète pour ce plugin.
Introduction
Section intitulée « Introduction »Dans ce guide, vous apprendrez à configurer Google Login avec Capgo Social Login pour iOS. Je suppose que vous avez déjà lu le Guide de configuration générale.
Utilisation de la connexion Google sur iOS
Section intitulée « Utilisation de la connexion Google sur iOS »Dans cette partie, vous apprendrez à configurer la connexion Google sur iOS.
-
Créez un ID client iOS dans le console Google
-
Cliquez sur la barre de recherche
-
Recherchez
credentialset cliquez sur leAPIs and Servicesun (le numéro 2 sur l'écran d'écoute)
-
Cliquez sur le
create credentials
-
Sélectionner
OAuth client ID
-
Sélectionnez le
Application typepouriOS
-
Trouvez l'ID de l'ensemble
-
Ouvrir Xcode
-
Faites double-cliquer sur
App
-
Assurez-vous d'être sur
Targets -> App
-
Trouvez votre
Bundle Identifier
-
Retournez à la console Google et collez votre
Bundle IdentifierenBundle ID
-
-
Optionnellement, ajoutez votre
App Store IDouTeam IDau champ ID du client si vous avez publié votre application sur l'App Store -
Après avoir rempli tous les détails, cliquez sur
create
-
Cliquez sur
OK
-
Ouvrez le client iOS créé récemment
-
Copiez les données suivantes
-
-
Modifier les informations de votre application Info.plist
-
Ouvrez Xcode et trouvez le
Info.plistfichier
-
Cliquez avec le bouton droit sur ce fichier et ouvrez-le en tant que source code
-
En bas de votre
Plistfichier, vous verrez un</dict>tag
-
Insérez le fragment suivant juste avant la balise de fermeture
</dict>Insérer le fragment avant la balise de fermeture __CAPGO_KEEP_0__
<key>CFBundleURLTypes</key><array><dict><key>CFBundleURLSchemes</key><array><string>YOUR_DOT_REVERSED_IOS_CLIENT_ID</string></array></dict></array> -
Changer la
YOUR_DOT_REVERSED_IOS_CLIENT_IDen la valeur copiée dans l'étape précédente
-
Enregistrer le fichier avec
Command + S
-
-
Modifier le
AppDelegate.swift-
Ouvrez le fichier AppDelegate
-
Insérer
import GoogleSignInen haut du fichier
-
Trouvez la
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:])fonction
-
Modifiez la fonction pour qu'elle ressemble à ceci
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)}
-
Enregistrez le fichier avec
Command + S
-
-
Configurer la connexion Google dans votre JavaScript/TypeScript code
-
Importer
SocialLoginetCapacitorimport { SocialLogin } from '@capgo/capacitor-social-login';import { Capacitor } from '@capacitor/core'; -
Appeler la méthode d'initialisation (ceci doit être appelé qu'une seule fois)
Configuration de base (mode en ligne - recommandé pour la plupart des applications) :
// onMounted is Vue specificonMounted(() => {SocialLogin.initialize({google: {iOSClientId: '673324426943-redacted.apps.googleusercontent.com',mode: 'online' // Default mode}})})Configuration avancée avec des identifiants clients supplémentaires :
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'}})}) -
Implémentez la fonction de connexion. Créez un bouton et exécutez le code suivant code lors du clic
Pour le mode en ligne :
const res = await SocialLogin.login({provider: 'google',options: {}})// handle the response - contains user dataconsole.log(JSON.stringify(res))Pour le mode hors ligne :
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)
-
-
Testez votre application
-
Construisez votre application et exécutez-la
cap sync -
Si vous avez fait tout correctement, vous devriez voir le flux de connexion Google fonctionner correctement
-
Problèmes connus
Section intitulée « Problèmes connus »Incompatibilité du plugin d'écran de confidentialité
Section intitulée “Incompatibilité du plugin d'écran de confidentialité”Le plugin de connexion Google est incompatible avec @capacitor/privacy-screenLors de l'utilisation simultanée de ces deux plugins, la vue de connexion Google sera interrompue par l'écran de confidentialité.
Solution de contournement : Appeler await PrivacyScreen.disable(); avant d'appeler la fonction de connexion :
import { PrivacyScreen } from '@capacitor/privacy-screen';import { SocialLogin } from '@capgo/capacitor-social-login';
await PrivacyScreen.disable();await SocialLogin.login({ provider: 'google', options: {}});Continuer depuis la connexion Google sur iOS
Section intitulée “Continuer depuis la connexion Google sur iOS”Si vous utilisez Connexion Google sur iOS pour planifier l'authentification et les flux de compte, connectez-le avec En utilisant @capgo/capacitor-social-login pour la capacité native dans En utilisant @capgo/capacitor-social-login, @capgo/capacitor-social-login pour le détail d'implémentation dans @capgo/capacitor-social-login, @capgo/capacitor-passkey pour le détail d'implémentation dans @capgo/capacitor-passkey, @capgo/capacitor-native-biometric pour le détail d'implémentation dans @capgo/capacitor-native-biometric, et Deux facteurs d'authentification pour le détail d'implémentation dans Deux facteurs d'authentification.