Importation de l'authentification Apple à @capgo/social-login
Copiez un prompt de configuration avec les étapes d'installation et le guide Markdown complet pour ce plugin.
Vue d'ensemble
Sous-section intitulée « Vue d'ensemble »Cette guide décrit la transition de l'ancien @capacitor-community/apple-sign-in plugin vers le plugin moderne. @capgo/capacitor-social-login Le nouveau plugin fournit une interface unifiée pour plusieurs fournisseurs d'authentification sociale avec un support amélioré de TypeScript et une maintenance active.
Installation
Sous-section intitulée « Installation »-
Supprimez l'ancien package :
Fenêtre de terminal npm uninstall @capacitor-community/apple-sign-in -
Installez le nouveau package :
Fenêtre de terminal npm install @capgo/capacitor-social-loginnpx cap sync
Code Modifications
Section intitulée “Code Modifications”Importer des modifications
Section intitulée “Importer des modifications”import { SignInWithApple } from '@capacitor-community/apple-sign-in';import { SocialLogin } from '@capgo/capacitor-social-login';Initialisation
Section intitulée “Initialisation”Modification clé: La nouvelle extension nécessite une é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 backend 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' }});Le nouveau plugin utilise login() avec provider: 'apple' et des champs d'échelle optionnels au lieu de passer des valeurs de configuration individuelles comme clientId et redirectURI.
Les modifications du type de réponse
Section intitulée « Changements de type de réponse »Les résultats incluent désormais un accessToken objet contenant des informations d'expiration et une section structurée profile remplaçant le 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
Section intitulée « Nouvelles fonctionnalités »Le plugin mis à jour introduit une fonctionnalité qui n'était pas disponible 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 au Plateforme
Section intitulée “Changements Spécifiques au Plateforme”Configuration iOS
Section intitulée “Configuration iOS”iOS permet de maintenir des procédures de configuration familières grâce aux capacités Xcode :
- La configuration iOS reste principalement la même. Vous devez toujours :
- Activer la « Connexion avec Apple » dans Xcode
- Configurer votre application dans le Portail des développeurs Apple
- No modifications supplémentaires code sont nécessaires pour iOS
Configuration Android
Section intitulée “Configuration Android”Android maintenant reçoit un support natif via l'authentification OAuth basée sur le web :
Le nouveau plugin fournit un support Android par défaut, mais nécessite une configuration supplémentaire :
- Créez un ID de service dans le Portail du développeur Apple
- Configurez un point de terminaison d'authentification web
- Configurez votre application Android pour gérer le flux OAuth
- Une configuration du service backend est requise
Pour des instructions de configuration Android détaillées, veuillez vous référer au Guide de configuration 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 typification TypeScript avec de meilleures définitions de type
- Maintenance de la communauté active par rapport à la version dépréciée
- Support Android intégré à l'aide d'une authentication basée sur le web
- Gestion de l'état de connexion persistant
- Meilleure gestion des erreurs 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
- La gestion des jetons est différente - gestion améliorée des jetons
- Gestion des erreurs et types d'erreurs ont changé - des erreurs plus détaillées
Pour plus d'informations sur les instructions de configuration détaillées, veuillez vous référer à la documentation officielle.
Continuez de la migration vers l'authentification Apple Sign-In à @capgo/social-login
Section intitulée “Continuez de la migration vers l'authentification Apple Sign-In à @capgo/social-login”Si vous utilisez la migration vers l'authentification Apple Sign-In à @capgo/social-login pour planifier l'authentification et les flux de compte, connectez-le avec Utilisation de @capgo/capacitor-social-login pour la capacité native dans l'utilisation de @capgo/capacitor-social-login, @capgo/capacitor-social-login pour les détails d'implémentation dans @capgo/capacitor-login-social @capgo/capacitor-passkey pour les détails d'implémentation dans @capgo/capacitor-passkey @capgo/capacitor-biométrique-natif pour les détails d'implémentation dans @capgo/capacitor-biométrique-natif, et L'authentification à deux facteurs pour les détails d'implémentation dans L'authentification à deux facteurs.