Migration vers Sign-In Apple à @capgo/social-login
Copiez une invite de configuration avec les étapes d'installation et la guide markdown complet pour ce plugin.
Vue d'ensemble
Section intitulée « Vue d'ensemble »Cette guide décrit la transition de l'ancien @capacitor-community/apple-sign-in plugin vers le moderne @capgo/capacitor-social-login package. Le nouveau plugin fournit une interface unifiée pour plusieurs fournisseurs d'authentification sociale avec un meilleur support TypeScript et une maintenance active.
Installation
Section intitulée “Installation”-
Supprimer l'ancien package :
Fenêtre de terminal npm uninstall @capacitor-community/apple-sign-in -
Installer le nouveau package :
Fenêtre de terminal npm install @capgo/capacitor-social-loginnpx cap sync
Code Modifications
Section intitulée “Code Modifications”Importer Modifications
Section intitulée « Importer les modifications »import { SignInWithApple } from '@capacitor-community/apple-sign-in';import { SocialLogin } from '@capgo/capacitor-social-login';Initialisation
Section intitulée « Initialisation »Clé de modification : La nouvelle extension nécessite un étape d'initialisation qui n'était pas nécessaire avant.
// No initialization needed in old package// For iOS: Basic configurationawait SocialLogin.initialize({ apple: {} // Basic iOS configuration});
// For Android: Additional configuration requiredawait SocialLogin.initialize({ apple: { clientId: 'YOUR_SERVICE_ID', // Service ID from Apple Developer Portal redirectUrl: 'https://your-backend.com/callback' // Your backend callback URL }});Note importante : Pour iOS, vous fournissez une configuration de base, tandis que l'Android nécessite des détails supplémentaires, notamment un ID de Service et une URL de rappel du serveur pour l'authentification OAuth basée sur le Web.
Se connecter
Section intitulée « Se connecter »Le processus de connexion se simplifie de plusieurs paramètres à un API: plus propre
const result = await SignInWithApple.authorize({ clientId: 'com.your.app', redirectURI: 'https://your-app.com/callback', scopes: 'email name', state: '12345', nonce: 'nonce'});
const result = await SocialLogin.login({ provider: 'apple', options: { // Optional: Add scopes if needed scopes: ['email', 'name'], nonce: 'nonce' }});La nouvelle extension utilise login() avec provider: 'apple' et des champs facultatifs plutôt que de passer des valeurs de configuration individuelles comme clientId et redirectURI.
Les types de réponse ont changé
Section intitulée “Les types de réponse ont changé”Les résultats incluent maintenant un accessToken objet contenant des détails d'expiration et une section structurée profile au lieu du format de réponse plus plat de l'ancien package :
// Old response typeinterface AppleSignInResponse { response: { user: string; email: string | null; givenName: string | null; familyName: string | null; identityToken: string | null; authorizationCode: string | null; };}
// New response typeinterface SocialLoginResponse { provider: 'apple'; result: { accessToken: { token: string; expiresIn?: number; refreshToken?: string; } | null; idToken: string | null; profile: { user: string; email: string | null; givenName: string | null; familyName: string | null; }; };}Nouvelles fonctionnalités
Nouvelles fonctionnalitésLe plugin mis à jour introduit des fonctionnalités qui n'étaient pas disponibles dans le prédécesseur :
Vérification de l'état de connexion
// Not available in old packageconst status = await SocialLogin.isLoggedIn({ provider: 'apple'});Fonctionnalité de déconnexion
// Not available in old packageawait SocialLogin.logout({ provider: 'apple'});Ces méthodes fournissent isLoggedIn() pour vérifier l'état d'authentification et logout() la fonctionnalité.
Changements spécifiques à la plateforme
Section intitulée « Changements spécifiques à la plateforme »Configuration iOS
Section intitulée “Configuration iOS”iOS maintient des procédures de configuration familières grâce aux capacités Xcode :
- La configuration iOS reste principalement la même. Vous avez toujours besoin de :
- Activer la « capacité Sign In with Apple » dans Xcode
- Configurer votre application dans le Portail des développeurs Apple
- Aucune modification supplémentaire code requise pour iOS
Configuration Android
Section intitulée “Configuration Android”Android reçoit désormais un support natif via une authentification OAuth web :
Le nouveau plugin fournit un support Android par défaut, mais nécessite une configuration supplémentaire :
- Créez un identifiant de service dans le portail Apple Developer
- Configurez un point de terminaison d'authentification web
- Configurez votre application Android pour gérer le flux OAuth
- Une configuration de service de backend est requise
Pour des instructions de configuration d'Android détaillées, veuillez vous référer au Guide de configuration d'Android.
Avantages clés
Section intitulée « Avantages clés »Le package modernisé fournit :
- API unifiées sur plusieurs fournisseurs sociaux (Google, Facebook, Apple)
- Mise à jour de la typage TypeScript améliorée avec des définitions de type améliorées
- Maintenance de la communauté active par rapport à la version dépréciée
- Support Android intégré par l'authentification basée sur le web
- Gestion d'état de connexion persistant
- Traitement des erreurs amélioré avec des types d'erreurs cohérents
Changements majeurs
Section intitulée “Changements majeurs”- L'initialisation explicite est désormais requise - pas de configuration par défaut
- La structure de l'objet réponse a changé - format de résultat imbriqué
- La mise en œuvre Android nécessite un service backend pour OAuth pour la mise à jour
- La gestion des jetons a été améliorée - gestion des jetons plus efficace
- La gestion des erreurs et les types d'erreurs ont changé - erreurs plus détaillées
Pour plus d'informations sur la configuration détaillée, veuillez consulter la documentation officielle.
Continuez de la section intitulée « Continuez de la migration vers Apple Sign-In à @capgo/social-login »
Section intitulée « Continuez de la migration vers Apple Sign-In à @capgo/social-login »Si vous utilisez Apple Sign-In Migration vers @capgo/social-login pour planifier l'authentification et les flux de compte, connectez-le avec Utiliser @capgo/capacitor-social-login pour la capacité native dans Utiliser @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 les détails d'implémentation dans l'authentification à deux facteurs.