Mulai
Copas prompt pengaturan dengan langkah instalasi dan panduan markdown lengkap untuk plugin ini.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-social-login`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/social-login/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
Pemasangan
Bab berjudul “Pemasangan”Anda dapat menggunakan Pengaturan Bantu AI kami untuk menginstal plugin. Tambahkan Capgo kemampuan ke alat AI Anda menggunakan perintah berikut:
npx skills add https://github.com/cap-go/capacitor-skills --skill capacitor-pluginsLalu gunakan prompt berikut:
Use the `capacitor-plugins` skill from `cap-go/capacitor-skills` to install the `@capgo/capacitor-social-login` plugin in my project.Jika Anda lebih suka Pengaturan Manual, instal plugin dengan menjalankan perintah-perintah berikut dan ikuti instruksi spesifik platform di bawah ini:
-
Pasang paket
Jendela terminal npm install @capgo/capacitor-social-login -
Sinkron dengan proyek native
Jendela terminal npx cap sync -
Mulai di awal aplikasi
import { SocialLogin } from '@capgo/capacitor-social-login';await SocialLogin.initialize({google: {webClientId: 'your-google-web-client-id',iOSClientId: 'your-google-ios-client-id',iOSServerClientId: 'your-google-web-client-id',mode: 'online',},apple: {clientId: 'your-apple-service-id',useProperTokenExchange: true,useBroadcastChannel: true,},facebook: {appId: 'your-facebook-app-id',},twitter: {clientId: 'your-twitter-client-id',redirectUrl: 'myapp://oauth/twitter',},oauth2: {github: {appId: 'your-github-client-id',authorizationBaseUrl: 'https://github.com/login/oauth/authorize',accessTokenEndpoint: 'https://github.com/login/oauth/access_token',redirectUrl: 'myapp://oauth/github',scope: 'read:user user:email',pkceEnabled: true,},},});
Contoh aliran inti
Bab berjudul “Contoh aliran inti”await SocialLogin.login({ provider: 'google', options: { scopes: ['profile', 'email'] },});
await SocialLogin.login({ provider: 'oauth2', options: { providerId: 'github', scope: 'read:user user:email', },});Periksa Sesi
Bab berjudul “Periksa Sesi”const status = await SocialLogin.isLoggedIn({ provider: 'google' });await SocialLogin.logout({ provider: 'google' });Kode Autentikasi dan Refresh
Bab berjudul “Kode Autentikasi dan Refresh”// For providers that support this modeconst authCodeResult = await SocialLogin.getAuthorizationCode({ provider: 'google' });await SocialLogin.refresh({ provider: 'google', options: {} as never });Bantuan Lanjutan
Bab berjudul “Bantuan Lanjutan”const jwt = await SocialLogin.decodeIdToken({ idToken: 'eyJhbGciOi...',});
const { date } = await SocialLogin.getAccessTokenExpirationDate({ accessTokenExpirationDate: Date.now() + 3600 * 1000,});
const expired = await SocialLogin.isAccessTokenExpired({ accessTokenExpirationDate: Date.now() + 1000,});
const active = await SocialLogin.isRefreshTokenAvailable({ refreshToken: 'a-token' });Catatan Khusus Provider
Bab berjudul “Catatan Khusus Provider”Mode Offline Google
Judul bagian “Modus Offline Google”google.mode: 'offline' mengembalikan serverAuthCode login. Dalam modus ini, logout, isLoggedIn, getAuthorizationCode, dan refresh tidak tersedia.
Pilih serverAuthCode hanya sebagai input untuk pertukaran token backend Anda. Jika Anda perlu memanggil SocialLogin.refresh() sebaliknya. google.mode: 'online' Apple
Judul bagian “Apple”
Aturuntuk pengelolaan token ketat dan useProperTokenExchange: true untuk pengaturan Android yang sederhana. useBroadcastChannel: true Judul bagian “Google offline mode”
Aliran Redirect Web OAuth2
Judul Bagian “Aliran Redirect Web OAuth2”Pilih OAuth2LoginOptions.flow: 'redirect' untuk aliran web yang berpindah dari halaman.
Ketergantungan Provider Dinamis
Judul Bagian “Ketergantungan Provider Dinamis”Anda dapat mengonfigurasi penyedia mana yang akan dimasukkan untuk mengurangi ukuran aplikasi native. Hal ini paling berguna ketika aplikasi Anda hanya membutuhkan penyedia tertentu.
Tambahkan Konfigurasi Penyedia ke capacitor.config.ts:
import type { CapacitorConfig } from '@capacitor/cli';
const config: CapacitorConfig = { appId: 'com.example.app', appName: 'MyApp', webDir: 'dist', plugins: { SocialLogin: { providers: { google: true, facebook: true, apple: true, twitter: false, }, logLevel: 1, }, },};
export default config;Nilai penyedia berarti:
true: penyedia diaktifkan dan ketergantungan native-nya diintegrasikan.false: penyedia dinonaktifkan dan ketergantungan native-nya tidak diintegrasikan.
Rincian penting:
- Jalankan
npx cap syncsetelah mengubah konfigurasi penyedia. - Jika tidak ada konfigurasi penyedia yang disediakan, semua penyedia akan kembali ke
trueuntuk kompatibilitas mundur. - Menghapus penyedia dengan
falsemembuatnya tidak tersedia pada waktu runtime, bahkan jika penyedia tersebut hanya menggunakan API sistem. - Konfigurasi ini hanya berpengaruh pada iOS dan Android; tidak berpengaruh pada Web.
- Apple Sign-In pada Android menggunakan OAuth tanpa ketergantungan eksternal SDK.
- Twitter/X menggunakan OAuth 2.0 standar tanpa ketergantungan eksternal SDK.
Untuk mencakup hanya Google Sign-In dan Apple Sign-In:
plugins: { SocialLogin: { providers: { google: true, facebook: false, apple: true, twitter: false, }, },}Dokumen terkait
Judul bagian “Dokumen terkait”- Ringkasan integrasi
- Integrasi Autentikasi yang Lebih Baik
- Penyedia OAuth2 dan OIDC
- Pengaturan yang Rusak
- Manifest Privasi dan Pengatur URL iOS
- Migrasi dari Ionic Auth Connect
- Petunjuk Migrasi Autentikasi Sosial Connect
- Migrasi penyedia lama
- Paket Migrasi Plugin Enterprise Ionic
Teruskan dari Getting Started
Bagian berjudul “Teruskan dari Getting Started”Jika Anda menggunakan Getting Started untuk merencanakan autentikasi dan alur akun, hubungkannya dengan Menggunakan @capgo/capacitor-social-login untuk kemampuan native di Menggunakan @capgo/capacitor-social-login, @capgo/capacitor-social-login untuk detail implementasi di @capgo/capacitor-social-login, @capgo/capacitor-passkey untuk detail implementasi di @capgo/capacitor-passkey, dan @capgo/capacitor-native-biometric untuk detail implementasi di @capgo/capacitor-native-biometric Autentikasi Dua Faktor untuk detail implementasi di Autentikasi Dua Faktor.