Migration zu Google Auth @capgo/social-login
Kopieren Sie einen Einrichtungsprompt mit den Installationsanweisungen und der vollständigen Markdown-Führungsanleitung für diesen Plugin.
Übersicht
Abschnitt mit dem Titel „Übersicht“Diese Anleitung bietet umfassende Schritte für die Migration von @codetrix-studio/capacitor-google-auth nach @capgo/capacitor-social-login, um eine glatte Übergang und eine verbesserte Authentifizierungs-Erfahrung zu gewährleisten. Das neue Plugin vereint mehrere soziale Authentifizierungsanbieter unter einer einzigen, konsistenten API.
Installation
Abschnitt mit dem Titel „Installation“-
Entfernen Sie das alte Paket:
Terminal-Fenster npm uninstall @codetrix-studio/capacitor-google-auth -
Installieren Sie das neue Paket:
Terminal-Fenster npm install @capgo/capacitor-social-loginnpx cap sync
Wichtige Änderungen in der Google Auth-Einstellung
Wichtige Änderungen in der Google Auth-EinrichtungWeb Client ID-Anforderung
Wichtige Änderungen in der Web Client ID-AnforderungKritische ÄnderungDie aktualisierte Erweiterung erfordert die Verwendung eines Web Client IDs auf allen Plattformen.
Sie benötigen:
- Erstellen Sie einen Web Client ID in Google Cloud Console, wenn Sie keinen haben (Wie Sie die Zugriffsberechtigungen erhalten)
- Verwenden Sie diesen Web Client ID in der
webClientIdFeld für alle Plattformen - Für Android müssen Sie jedoch weiterhin einen Android Client ID mit Ihrem SHA1 erstellen, aber dies dient nur zur Verifizierungszwecke - der Token wird nicht verwendet (Anleitung zur Android-Einrichtung)
Code Änderungen
Abschnitt mit dem Titel „Code Änderungen“Änderungen importieren
Abschnitt mit dem Titel „Änderungen importieren“import { GoogleAuth } from '@codetrix-studio/capacitor-google-auth';import { SocialLogin } from '@capgo/capacitor-social-login';Initialisierung
Abschnitt mit dem Titel „Initialisierung“Die Einrichtung wandelt sich von einer einfachen GoogleAuth.initialize() Aufruf zu einer strukturierteren SocialLogin.initialize() mit einem verschachtelten Google-Konfiguration:
GoogleAuth.initialize({ clientId: 'CLIENT_ID.apps.googleusercontent.com', scopes: ['profile', 'email'], grantOfflineAccess: true,});
await SocialLogin.initialize({ google: { webClientId: 'WEB_CLIENT_ID.apps.googleusercontent.com', // Use Web Client ID for all platforms iOSClientId: 'IOS_CLIENT_ID', // for iOS mode: 'offline' // replaces grantOfflineAccess }});Der Login-Methode ändert sich von GoogleAuth.signIn() zu SocialLogin.login() mit expliziter Anbieterangabe:
const user = await GoogleAuth.signIn();const res = await SocialLogin.login({ provider: 'google', options: { scopes: ['email', 'profile'], forceRefreshToken: true // if you need refresh token }});Plattformspezifische Änderungen
Abschnitt mit dem Titel “Plattformspezifische Änderungen”Android
Aktualisieren Sie Ihren- Vollständiger Android-Einrichtungsleitfaden
MainActivity.java(Auf die Zwischenablage kopieren):
import ee.forgr.capacitor.social.login.GoogleProvider; import ee.forgr.capacitor.social.login.SocialLoginPlugin; import ee.forgr.capacitor.social.login.ModifiedMainActivityForSocialLoginPlugin; import com.getcapacitor.PluginHandle; import com.getcapacitor.Plugin; import android.content.Intent; import android.util.Log;
public class MainActivity extends BridgeActivity { public class MainActivity extends BridgeActivity implements ModifiedMainActivityForSocialLoginPlugin {
@Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data);
if (requestCode >= GoogleProvider.REQUEST_AUTHORIZE_GOOGLE_MIN && requestCode < GoogleProvider.REQUEST_AUTHORIZE_GOOGLE_MAX) { PluginHandle pluginHandle = getBridge().getPlugin("SocialLogin"); if (pluginHandle == null) { Log.i("Google Activity Result", "SocialLogin login handle is null"); return; } Plugin plugin = pluginHandle.getInstance(); if (!(plugin instanceof SocialLoginPlugin)) { Log.i("Google Activity Result", "SocialLogin plugin instance is not SocialLoginPlugin"); return; } ((SocialLoginPlugin) plugin).handleGoogleLoginIntent(requestCode, data); } }
public void IHaveModifiedTheMainActivityForTheUseWithSocialLoginPlugin() {}}-
Keine großen Änderungen sind in AppDelegate.swift (iOS-Einrichtungsanleitung)
-
Aktualisieren Sie Ihre Konfiguration in
capacitor.config.json, wir verwenden es nicht in der neuen Plugin:
{ "plugins": { "GoogleAuth": { "scopes": ["profile", "email"], "serverClientId": "xxxxxx-xxxxxxxxxxxxxxxxxx.apps.googleusercontent.com", "forceCodeForRefreshToken": true }}- Entfernen Sie die Google-Sign-In-Meta-Tags aus Ihrem
index.htmlWenn Sie sie verwendet haben:
<meta name="google-signin-client_id" content="{your client id here}" /><meta name="google-signin-scope" content="profile email" />Response Type Änderungen
Abschnitt mit dem Titel “Response Type Änderungen”Die Authentifizierungsantwort liefert nun ein strukturiertes Objekt, das Informationen über den Anbieter, Zugriffs- und ID-Tokens sowie Benutzerprofil-Daten enthält:
interface GoogleLoginResponse { provider: 'google'; result: { accessToken: { token: string; expires: string; // ... other token fields } | null; idToken: string | null; profile: { email: string | null; familyName: string | null; givenName: string | null; id: string | null; name: string | null; imageUrl: string | null; }; };}Die Antwortstruktur umfasst:
- provider: Identifiziert den Authentifizierungsanbieter (
'google') - result.accessToken: Zugriffs-Token-Details mit Ablaufdatum
- result.idToken: ID-Token für die Authentifizierung
- result.profile: Benutzerprofilinformationen einschließlich E-Mail, Name und Bild-URL
Zusätzliche Funktionen
Abschnitt mit dem Titel „Zusätzliche Funktionen“Das neue Paket unterstützt mehrere soziale Authentifizierungsanbieter über Google hinaus:
Diese einheitliche Ansatz bietet:
- Konsistente API bei allen Anbietern
- Verbesserte Unterstützung für TypeScript
- Bessere Fehlerbehandlung
- Aktive Wartung und Community-Unterstützung
Check the Hauptdokumentation Für detaillierte Anweisungen zur Einrichtung dieser zusätzlichen Anbieter.
Weitermachen von Google Auth Migration zu @capgo/social-login
Abschnitt mit dem Titel “Weitermachen von Google Auth Migration zu @capgo/social-login”Wenn Sie Google Auth Migration zu @capgo/social-login zur Planung der Authentifizierung und Benutzerflüsse verwenden, verbinden Sie es mit Mit @capgo/capacitor-social-login für die native Fähigkeit in Mit @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-Biometrie für die Implementierungsdetails in @capgo/capacitor-native-Biometrie, und Zwei-Faktor-Authentifizierung für die Implementierungsdetails in Zwei-Faktor-Authentifizierung.