Migrazione di Apple Sign-In a @capgo/social-login
Copia un prompt di configurazione con i passaggi di installazione e la guida markdown completa per questo plugin.
Panoramica
Sezione intitolata “Panoramica”Questo manuale descrive la transizione dalla versione precedente @capacitor-community/apple-sign-in aggiungi il plugin al moderno @capgo/capacitor-social-login pacchetto. Il nuovo plugin fornisce un'interfaccia unificata per i provider di autenticazione sociale multipli con supporto migliorato per TypeScript e manutenzione attiva.
Installation
Elimina il vecchio pacchetto:-
Rimuovi il vecchio pacchetto:
Finestra del terminale npm uninstall @capacitor-community/apple-sign-in -
Installa il nuovo pacchetto:
Finestra del terminale npm install @capgo/capacitor-social-loginnpx cap sync
Code Modifiche
Sezione intitolata “Code Modifiche”Importa Modifiche
Sezione intitolata “Importa Modifiche”import { SignInWithApple } from '@capacitor-community/apple-sign-in';import { SocialLogin } from '@capgo/capacitor-social-login';Inizializzazione
Sezione intitolata “Inizializzazione”Modifica Chiave: La nuova estensione richiede un passaggio di inizializzazione che non era necessario prima.
// 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 }});Nota ImportantePer iOS, fornisce una configurazione base, mentre per Android sono necessari ulteriori dettagli, tra cui un ID del servizio e l'URL di callback backend per l'autenticazione OAuth basata su web.
Il processo di accesso si semplifica da più parametri a una API più pulita.
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' }});Il nuovo plugin utilizza login() with provider: 'apple' : con e opzionali ambiti anziché passare valori di configurazione individuali come clientId E e redirectURI.
Modifiche al tipo di risposta
Sottosezione intitolata “Modifiche al tipo di risposta”I risultati includono ora un accessToken oggetto con dettagli di scadenza e una sezione profile strutturata, che sostituisce il formato di risposta più lineare dell'originale pacchetto:
// 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; }; };}Ecco le nuove funzionalità
Section titled “New Capabilities”L'aggiornamento del plugin introduce funzionalità che non erano disponibili nel predecessore:
Verifica dello stato di accesso
// Not available in old packageconst status = await SocialLogin.isLoggedIn({ provider: 'apple'});Funzionalità di Logout
// Not available in old packageawait SocialLogin.logout({ provider: 'apple'});Queste funzioni forniscono isLoggedIn() per verificare lo stato di autenticazione e logout() funzionalità.
Modifiche specifiche per piattaforma
Sottosezione intitolata “Modifiche specifiche per piattaforma”IOS mantiene procedure di configurazione familiari attraverso le capacità di Xcode:
- La configurazione iOS rimane sostanzialmente la stessa. Ancora devi:
- Abilita la capacità di "Accedi con Apple" in Xcode
- Configura la tua app nel Portale dello Sviluppatore Apple
- Nessun aggiornamento aggiuntivo code richiesto per iOS
Configurazione per Android
Sottosezione intitolata "Configurazione per Android"Android ora riceve supporto nativo tramite autenticazione OAuth basata su web:
Il nuovo plugin fornisce il supporto per Android di serie, ma richiede una configurazione aggiuntiva:
- Creare un ID Servizi nel Portale dello Sviluppatore Apple
- Configura un endpoint di autenticazione web
- Configura la tua app Android per gestire il flusso OAuth
- È richiesta la configurazione del servizio back-end
ISTRUZIONI DI SETTAGGIO DETTAGLIATE PER Android, si prega di consultare il GUIDA DI SETTAGGIO PER Android.
VANTAGGI PRINCIPALI
Sottosezione intitolata “Vantaggi principali”Il pacchetto modernizzato fornisce:
- API UNITE su più provider social (Google, Facebook, Apple)
- Tipi di dati migliorati con definizioni di tipo più precise
- Mantenimento della community attiva rispetto alla versione deprecata
- Sostegno integrato per Android attraverso l'autenticazione basata sul web
- Gestione dello stato di accesso persistente
- Manutenzione degli errori migliorata con tipi di errore coerenti
Modifiche significative
Sottosezione intitolata “Modifiche significative”- È ora richiesta l'inizializzazione esplicita - nessuna configurazione predefinita
- La struttura dell'oggetto di risposta è cambiata - formato di risultato nidificato
- L'implementazione Android richiede un servizio backend per OAuth
- La gestione dei refresh dei token è diversa - miglioramento della gestione dei token
- Gestione degli errori e tipi di errori sono stati modificati - errori più dettagliati
Per ulteriori istruzioni di configurazione dettagliate, si prega di consultare la documentazione ufficiale.
Continua da Apple Sign-In Migration a @capgo/social-login
Sezione intitolata “Continua da Apple Sign-In Migration a @capgo/social-login”Se stai utilizzando Apple Sign-In Migration a @capgo/social-login per pianificare l'autenticazione e le flussi di account, connettilo con Utilizza @capgo/capacitor-social-login Migliorare la capacità nativa in Utilizzare @capgo/capacitor-login sociale, @capgo/capacitor-login sociale Migliorare la dettaglio di implementazione in @capgo/capacitor-login sociale, @capgo/capacitor-chiave di accesso Migliorare la dettaglio di implementazione in @capgo/capacitor-passkey, @capgo/capacitor-biometria nativa Migliorare la dettaglio di implementazione in @capgo/capacitor-biometria nativa, e Autenticazione a due fattori Migliorare la dettaglio di implementazione in Autenticazione a due fattori.