Google Auth-Migration zu @capgo/social-login
Kopieren Sie einen Setup-Vorschlag mit den Installationsanweisungen und der vollständigen Markdown-Anleitung 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 zu @capgo/capacitor-social-login, um eine reibungslose Übergang und eine verbesserte Authentifizierungs-Erfahrung zu gewährleisten. Der neue Plugin vereint mehrere soziale Authentifizierungsanbieter unter einem einzigen, konsistenten API.
-
Entfernen Sie das alte Paket:
Terminalfenster npm uninstall @codetrix-studio/capacitor-google-auth -
Installieren Sie das neue Paket:
Terminalfenster npm install @capgo/capacitor-social-loginnpx cap sync
Wichtige Änderungen bei der Google Auth-Einrichtung
Abschnitt mit dem Titel „Wichtige Änderungen bei der Google Auth-Einrichtung“Web-Client-ID-Erforderlichkeit
Abschnitt mit dem Titel „Web-Client-ID-Erforderlichkeit“Kritische ÄnderungDie aktualisierte Erweiterung erfordert die Verwendung einer Web-Client-ID 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 - For Android, you still need to create an Android Client ID with your SHA1, but this is only for verification purposes - the token won’t be used (__CAPGO_KEEP_0__ Änderungen)
Code Änderungen
Section titled “Code Changes”Importierungsänderungen
Zwischenablage kopierenimport { GoogleAuth } from '@codetrix-studio/capacitor-google-auth';import { SocialLogin } from '@capgo/capacitor-social-login';Initialisierung
Abschnitt: InitialisierungDie Einrichtung wandelt sich von einer einfachen GoogleAuth.initialize() Anrufung 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 }});Anmelden
Abschnitt: AnmeldenDie Anmelde Methode wandelt 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 }});Plattform-spezifische Änderungen
Abschnitt: Plattform-spezifische ÄnderungenAndroid
Abschnitt: Android- Aktualisieren Sie
MainActivity.java(Vollständiger Android-Einrichtungsleitfaden):
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 größeren Änderungen erforderlich in AppDelegate.swift (iOS-Einrichtungsleitfaden)
-
Aktualisieren Sie Ihre Konfiguration in
capacitor.config.jsonWir verwenden es nicht in der neuen Plugin:
{ "plugins": { "GoogleAuth": { "scopes": ["profile", "email"], "serverClientId": "xxxxxx-xxxxxxxxxxxxxxxxxx.apps.googleusercontent.com", "forceCodeForRefreshToken": true }}- Entfernen Sie die Google-Anmeldemeta-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" />Änderungen im Antworttyp
Abschnitt mit dem Titel „Änderungen im Antworttyp“Die Authentifizierungsantwort liefert nun ein strukturiertes Objekt, das Informationen zum 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:
- Anbieter: Identifiziert den Authentifizierungsanbieter (
'google') - result.accessToken: Zugriffstoken-Daten mit Ablaufdatum
- result.idToken: ID-Token für die Authentifizierung
- Erfolgsprofil: 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:
Diese einheitliche Vorgehensweise bietet:
- Konsistente API bei allen Anbietern
- Verbesserte TypeScript-Unterstützung
- Bessere Fehlerbehandlung
- Aktive Wartung und Community-Unterstützung
Überprüfen Sie Hauptdokumentation für detaillierte Einrichtungsanweisungen für diese zusätzlichen Anbieter.
Weitergehen Sie von der Google Auth-Migration zu @capgo/social-login
Abschnitt mit dem Titel “Weitergehen Sie von der Google Auth-Migration zu @capgo/social-login”Wenn Sie diese Anwendung verwenden Migration von Google Auth zu @capgo/social-login um die Authentifizierung und die Kontenflüsse zu planen, 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-Passwort Für die Implementierungsdetails in @capgo/capacitor-passkey, @capgo/capacitor-native-biometrisch Für die Implementierungsdetails in @capgo/capacitor-native-biometrisch und Zweifaktor-Authentifizierung Für die Implementierungsdetails in Zweifaktor-Authentifizierung.