Apple Sign-In-Migration zu @capgo/social-login
Installieren
Übersicht
Abschnitt mit dem Titel „Übersicht“Diese Anleitung beschreibt die Übergang vom alten Plugin zum modernen @capacitor-community/apple-sign-in Package. Das neue Plugin bietet eine einheitliche Schnittstelle für mehrere soziale Authentifizierungsanbieter mit verbessertem TypeScript-Unterstützung und aktiver Wartung. @capgo/capacitor-social-login Installation
Abschnitt mit dem Titel „Installation“
Dieses Handbuch beschreibt die Übergang vom alten Plugin zum modernen Package. Das neue Plugin bietet eine einheitliche Schnittstelle für mehrere soziale Authentifizierungsanbieter mit verbessertem TypeScript-Unterstützung und aktiver Wartung.-
Entfernen Sie das alte Paket:
Terminalfenster npm uninstall @capacitor-community/apple-sign-in -
Installieren Sie das neue Paket:
Terminalfenster npm install @capgo/capacitor-social-loginnpx cap sync
Code Änderungen
Abschnitt mit dem Titel „Code Änderungen“Importieren Sie Änderungen
Abschnitt mit dem Titel „Importieren Sie Änderungen“import { SignInWithApple } from '@capacitor-community/apple-sign-in';import { SocialLogin } from '@capgo/capacitor-social-login';Initialisierung
Abschnitt mit dem Titel “Initialisierung”Änderung der Schlüssel: Die neue Plugin erfordert einen Initialisierungsschritt, der vorher nicht erforderlich war.
// 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 }});Wichtiger Hinweis: Für iOS bereitigen Sie die grundlegende Konfiguration, während Android zusätzliche Details erfordert, einschließlich einer Service-ID und einer Backend-Callback-URL für webbasierte OAuth-Authentifizierung.
Der Anmeldevorgang vereinfacht sich von mehreren Parametern zu einem sauberen API:
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' }});Das neue Plugin verwendet login() mit provider: 'apple' And optional Scopes clientId Und redirectURI.
Änderungen im Antworttyp
Änderungen im AntworttypErfolgreiche Migrationsergebnisse accessToken Erfolgreiche Migrationsergebnisse profile Objekt mit Ablaufdaten und einem strukturierten
// 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; }; };}Erfolgreiche Migrationsergebnisse
Zu Clipboard kopierenNeue Funktionen
Änderungen im Antworttyp
// Not available in old packageconst status = await SocialLogin.isLoggedIn({ provider: 'apple'});Abmeldungs-Funktion
// Not available in old packageawait SocialLogin.logout({ provider: 'apple'});Diese Methoden bieten eine Möglichkeit, isLoggedIn() um die Authentifizierungsstatus zu überprüfen und logout() Funktionen bereitzustellen.
Plattformspezifische Änderungen
Abschnitt mit dem Titel „Plattformspezifische Änderungen“iOS-Einrichtung
Abschnitt mit dem Titel „iOS-Einrichtung“iOS pflegt bekannte Einrichtungsverfahren durch Xcode-Funktionen:
- Die iOS-Einstellungen bleiben größtenteils gleich. Sie benötigen immer noch:
- Die Funktion „Mit Apple anmelden“ in Xcode aktivieren
- Ihre App in der Apple-Entwickler-Portal konfigurieren
- Keine zusätzlichen code Änderungen erforderlich für iOS
Android-Einstellungen
Abschnitt mit dem Titel „Android-Einstellungen“Android erhält nun native Unterstützung über webbasierte OAuth-Authentifizierung:
Die neue Plugin bietet Android-Unterstützung direkt aus der Box, erfordert jedoch zusätzliche Einstellungen:
- Erstellen Sie einen Services-ID in der Apple-Entwickler-Portal
- Konfigurieren Sie einen Web-Authentifizierungs-Endpunkt
- Konfigurieren Sie Ihre Android-App, um den OAuth-Flow zu handhaben
- Backend-Dienstkonfiguration ist erforderlich
Für detaillierte Anweisungen zur Android-Einrichtung, wenden Sie sich bitte an die Anleitung zur Android-Einrichtung.
Schlüsselvorteile
Abschnitt mit dem Titel „Schlüsselvorteile“Das modernisierte Paket bietet:
- Einheitliche APIs über mehrere soziale Anbieter (Google, Facebook, Apple)
- Verbesserte TypeScript-Typisierung mit besseren Typdefinitionen
- Aktive Wartung durch die Community im Vergleich zur veralteten Version
- Eingebaute Android-Unterstützung über Web-basierte Authentifizierung
- Verwaltung des persistierenden Anmeldezustands
- Bessere Fehlerbehandlung mit konsistenten Fehlerarten
Änderungen mit Auswirkungen auf die Kompatibilität
Abschnitt mit dem Titel “Änderungen mit Auswirkungen auf die Kompatibilität”- Zwingende Initialisierung ist jetzt erforderlich - keine Standardkonfiguration
- Struktur des Antwortobjekts wurde geändert - formatierte Ergebnisse in der NESTED-Struktur
- Die Android-Implementierung erfordert einen Backend-Dienst für OAuth
- Die Token-Aufrufhandhabung ist anders - Verbesserte Token-Verwaltung
- Fehlerhandhabung und Fehlerarten haben sich geändert - Detailliertere Fehler
Für detailliertere Anweisungen zur Einrichtung, wenden Sie sich bitte an die offizielle Dokumentation.
Weitergehen Sie von der Migration zu Apple Sign-In zu @capgo/social-login
Abschnitt mit dem Titel “Weitergehen Sie von der Migration zu Apple Sign-In zu @capgo/social-login”Wenn Sie Apple Sign-In Migration zu @__CAPGO_KEEP_0__/social-login Apple Sign-In Migration to @capgo/social-login Apple Sign-In Migration zu @__CAPGO_KEEP_0__/social-login Mithilfe von @capgo/capacitor-social-login für die native Fähigkeit in Mithilfe von @capgo/capacitor-social-login @capgo/capacitor-social-login für die Implementierungsdetails in @capgo/capacitor-social-login @capgo/capacitor-passkey für die Implementierungsdetails in @capgo/capacitor-passkey @capgo/capacitor-native-biometrisch für die Implementierungsdetails in @capgo/capacitor-native-biometrisch und Zwei-Faktor-Authentifizierung für die Implementierungsdetails in Zwei-Faktor-Authentifizierung.