Lompat ke Konten

Getting Started

GitHub

Instal

Install

Gunakan Setup Bantuan AI kami untuk menginstal plugin. Tambahkan Capgo kemampuan ke alat AI Anda menggunakan perintah berikut:

Jendela Terminal
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

Lalu gunakan prompt berikut:

Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-firebase-authentication` plugin in my project.

Jika Anda lebih suka Setup Manual, instal plugin dengan menjalankan perintah-perintah berikut dan ikuti instruksi spesifik platform di bawah ini:

Jendela Terminal
bun add @capgo/capacitor-firebase-authentication
bunx cap sync

Import

Import
import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';

Applies a verification code sent to the user by email.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.applyActionCode({} as ApplyActionCodeOptions);

Menyelesaikan proses pengaturan ulang kata sandi.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.confirmPasswordReset({} as ConfirmPasswordResetOptions);

Menyelesaikan proses verifikasi nomor telepon.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.confirmVerificationCode({} as ConfirmVerificationCodeOptions);

Membuat akun pengguna baru dengan email dan kata sandi. Jika akun baru berhasil dibuat, pengguna akan masuk secara otomatis.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.createUserWithEmailAndPassword({} as CreateUserWithEmailAndPasswordOptions);

Menghapus dan keluar pengguna.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.deleteUser();

Mengambil metode masuk untuk alamat email.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.fetchSignInMethodsForEmail({} as FetchSignInMethodsForEmailOptions);

Mengambil pengguna yang sedang masuk.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.getCurrentUser();

Mengembalikan nilai SignInResult Jika aplikasi Anda meluncurkan alur masuk web dan sistem operasi membersihkan aplikasi saat di latar belakang.

Hanya tersedia untuk Android.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.getPendingAuthResult();

Mengambil Token Autentikasi Firebase untuk pengguna yang saat ini masuk.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.getIdToken();

Mengembalikan Token Web JSON (JWT) yang telah di deserialisasi untuk mengidentifikasi pengguna ke layanan Firebase.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.getIdTokenResult();

Mengembalikan SignInResult dari aliran sign-in berdasarkan redirect.

Jika sign-in gagal, gagal dengan kesalahan. Jika tidak ada operasi redirect yang dipanggil, mengembalikan sebuah SignInResult dengan pengguna null.

Hanya tersedia untuk Web.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.getRedirectResult();

Dapatkan id penyewa.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.getTenantId();

Memeriksa jika tautan masuk adalah sign-in dengan link email yang sesuai untuk signInWithEmailLink.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.isSignInWithEmailLink({} as IsSignInWithEmailLinkOptions);

Menghubungkan akun pengguna dengan penyedia autentikasi Apple.

Pengguna harus sudah masuk di layer native. skipNativeAuth Opsi pengaturan tidak memiliki efek di sini.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.linkWithApple();

Menghubungkan akun pengguna dengan penyedia autentikasi Email.

Pengguna harus sudah masuk di layer native. skipNativeAuth Opsi pengaturan tidak memiliki efek di sini.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.linkWithEmailAndPassword({} as LinkWithEmailAndPasswordOptions);

Menghubungkan akun pengguna dengan penyedia autentikasi Email.

Pengguna harus sudah masuk di layer native. skipNativeAuth opsi konfigurasi tidak berpengaruh di sini.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.linkWithEmailLink({} as LinkWithEmailLinkOptions);

Menghubungkan akun pengguna dengan penyedia autentikasi Facebook.

Pengguna harus sudah masuk di layer native. Tapi skipNativeAuth opsi konfigurasi tidak berpengaruh di sini.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.linkWithFacebook();

Menghubungkan akun pengguna dengan penyedia autentikasi Game Center.

Pengguna harus sudah masuk di layer native. Tapi skipNativeAuth opsi konfigurasi tidak berpengaruh di sini.

Hanya tersedia untuk iOS.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.linkWithGameCenter();

Menghubungkan akun pengguna dengan penyedia autentikasi GitHub.

Pengguna harus sudah masuk di layer native. Tidak ada pengaruh dari opsi konfigurasi di sini. skipNativeAuth Salin ke clipboard

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.linkWithGithub();

Pengguna harus sudah masuk di layer native. Tidak ada pengaruh dari opsi konfigurasi di sini.

Salin ke clipboard skipNativeAuth Bab berjudul “linkDenganMicrosoft”

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.linkWithGoogle();

linkWithMicrosoft

__CAPGO_KEEP_0__

Terhubungkan akun pengguna dengan penyedia autentikasi Microsoft.

User harus sudah masuk di layer native. skipNativeAuth Opsi pengaturan ini tidak berpengaruh di sini.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.linkWithMicrosoft();

Terhubungkan akun pengguna dengan penyedia OpenID Connect.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.linkWithOpenIdConnect({} as LinkWithOpenIdConnectOptions);

Terhubungkan akun pengguna dengan penyedia autentikasi Nomor Telepon.

User harus sudah masuk di layer native. skipNativeAuth Opsi pengaturan ini tidak berpengaruh di sini.

Pilih phoneVerificationCompleted Pemberi notifikasi ketika verifikasi selesai. Gunakan phoneVerificationFailed Pemberi notifikasi ketika verifikasi gagal. Gunakan phoneCodeSent Pemberi untuk mendapatkan ID verifikasi.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.linkWithPhoneNumber({} as LinkWithPhoneNumberOptions);

Terhubungkan akun pengguna dengan penyedia autentikasi Play Games.

Pengguna harus sudah masuk di layer native. skipNativeAuth Opsi pengaturan tidak berpengaruh di sini.

Hanya tersedia untuk Android.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.linkWithPlayGames();

Terhubungkan akun pengguna dengan penyedia autentikasi Twitter.

Pengguna harus sudah masuk ke layer native. skipNativeAuth Opsi pengaturan tidak berpengaruh di sini.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.linkWithTwitter();

Menghubungkan akun pengguna dengan penyedia autentikasi Yahoo.

Pengguna harus sudah masuk ke layer native. skipNativeAuth Opsi pengaturan tidak berpengaruh di sini.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.linkWithYahoo();

Mengisi ulang data akun pengguna, jika sudah masuk.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.reload();

Menggugurkan akses token yang diberikan. Saat ini hanya mendukung akses token OAuth Apple.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.revokeAccessToken({} as RevokeAccessTokenOptions);

Mengirimkan email verifikasi kepada pengguna yang saat ini masuk.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.sendEmailVerification();

Mengirimkan email reset kata sandi.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.sendPasswordResetEmail({} as SendPasswordResetEmailOptions);

Mengirimkan tautan masuk email kepada pengguna dengan alamat email yang ditentukan.

Untuk menyelesaikan masuk dengan tautan email, panggil signInWithEmailLink dengan alamat email dan tautan email yang disediakan dalam email yang dikirimkan kepada pengguna.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.sendSignInLinkToEmail({} as SendSignInLinkToEmailOptions);

Mengatur bahasa pengguna code untuk operasi autentikasi.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.setLanguageCode({} as SetLanguageCodeOptions);

Mengatur jenis penyimpanan untuk sesi autentikasi yang disimpan saat ini.

Hanya tersedia untuk Web.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.setPersistence({} as SetPersistenceOptions);

Mengatur ID penyewa.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.setTenantId({} as SetTenantIdOptions);

Masuk sebagai pengguna anonim.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.signInAnonymously();

Mengaktifkan alur masuk Apple.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.signInWithApple();

Mengaktifkan alur masuk Token Kustom.

Metode ini tidak dapat digunakan bersamaan dengan skipNativeAuth Pada Android dan iOS. signInWithCustomToken interface of the Firebase JS SDK directly.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.signInWithCustomToken({} as SignInWithCustomTokenOptions);

signInWithEmailAndPassword

Salin ke clipboard

Mengaktifkan alur masuk menggunakan alamat email dan kata sandi.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.signInWithEmailAndPassword({} as SignInWithEmailAndPasswordOptions);

Masuk menggunakan alamat email dan tautan masuk email.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.signInWithEmailLink({} as SignInWithEmailLinkOptions);

Mengaktifkan alur masuk Facebook.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.signInWithFacebook();

Mengaktifkan alur masuk Game Center.

Hanya tersedia untuk iOS.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.signInWithGameCenter();

Mulai GitHub alur masuk.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.signInWithGithub();

Mulai alur masuk Google.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.signInWithGoogle();

Mulai alur masuk Microsoft.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.signInWithMicrosoft();

Mulai alur masuk OpenID Connect.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.signInWithOpenIdConnect({} as SignInWithOpenIdConnectOptions);

Mengaktifkan alur masuk menggunakan nomor telepon.

Gunakan phoneVerificationCompleted untuk menerima pemberitahuan ketika verifikasi selesai. phoneVerificationFailed Gunakan phoneCodeSent untuk menerima pemberitahuan ketika verifikasi gagal.

Gunakan

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.signInWithPhoneNumber({} as SignInWithPhoneNumberOptions);

Salin ke clipboard

Bagian berjudul “signInWithPlayGames”

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.signInWithPlayGames();

Menggunakan Twitter untuk masuk.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.signInWithTwitter();

Menggunakan Twitter untuk keluar.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.signInWithYahoo();

Menggunakan Twitter untuk keluar.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.signOut();

Menggunakan Twitter untuk keluar.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.unlink({} as UnlinkOptions);

Memperbarui alamat email pengguna yang sedang masuk.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.updateEmail({} as UpdateEmailOptions);

Memperbarui kata sandi pengguna yang sedang masuk.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.updatePassword({} as UpdatePasswordOptions);

Memperbarui data profil pengguna.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.updateProfile({} as UpdateProfileOptions);

Sets the user-facing language code to be the default app language.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.useAppLanguage();

Instrument aplikasi Anda untuk berbicara dengan emulator Autentikasi.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.useEmulator({} as UseEmulatorOptions);

Mengverifikasi alamat email baru sebelum mengupdate alamat email pengguna yang saat ini masuk.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.verifyBeforeUpdateEmail({} as VerifyBeforeUpdateEmailOptions);

checkAppTrackingTransparencyPermission

Bagian berjudul “periksaIzinPengawasanAplikasi”

Mengecek status saat ini dari pengawasan aplikasi.

Hanya tersedia di iOS.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.checkAppTrackingTransparencyPermission();

requestAppTrackingTransparencyPermission

Bagian berjudul “mintaIzinPengawasanAplikasi”

Membuka dialog sistem untuk mengizinkan pengawasan aplikasi.

Perhatian: Pengguna mungkin telah menonaktifkan permintaan pelacakan di pengaturan perangkat, lihat documentasi Apple.

Hanya tersedia di iOS.

import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';
await FirebaseAuthentication.requestAppTrackingTransparencyPermission();
export interface ApplyActionCodeOptions {
/**
* A verification code sent to the user.
*
* @since 0.2.2
*/
oobCode: string;
}
export interface ConfirmPasswordResetOptions {
/**
* A verification code sent to the user.
*
* @since 0.2.2
*/
oobCode: string;
/**
* The new password.
*
* @since 0.2.2
*/
newPassword: string;
}
export interface ConfirmVerificationCodeOptions {
/**
* The verification ID received from the `phoneCodeSent` listener.
*
* The `verificationCode` option must also be provided.
*
* @since 5.0.0
*/
verificationId: string;
/**
* The verification code either received from the `phoneCodeSent` listener or entered by the user.
*
* The `verificationId` option must also be provided.
*
* @since 5.0.0
*/
verificationCode: string;
}
export interface SignInResult {
/**
* The currently signed-in user, or null if there isn't any.
*
* @since 0.1.0
*/
user: User | null;
/**
* Credentials returned by an auth provider.
*
* @since 0.1.0
*/
credential: AuthCredential | null;
/**
* Additional user information from a federated identity provider.
*
* @since 0.5.1
*/
additionalUserInfo: AdditionalUserInfo | null;
}
export interface CreateUserWithEmailAndPasswordOptions {
/**
* @since 0.2.2
*/
email: string;
/**
* @since 0.2.2
*/
password: string;
}
export interface FetchSignInMethodsForEmailOptions {
/**
* The user's email address.
*
* @since 6.0.0
*/
email: string;
}
export interface FetchSignInMethodsForEmailResult {
/**
* The sign-in methods for the specified email address.
*
* This list is empty when [Email Enumeration Protection](https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection)
* is enabled, irrespective of the number of authentication methods available for the given email.
*
* @since 6.0.0
*/
signInMethods: string[];
}
export interface GetCurrentUserResult {
/**
* The currently signed-in user, or null if there isn't any.
*
* @since 0.1.0
*/
user: User | null;
}
export interface GetIdTokenOptions {
/**
* Force refresh regardless of token expiration.
*
* @since 0.1.0
*/
forceRefresh: boolean;
}
export interface GetIdTokenResult {
/**
* The Firebase Auth ID token JWT string.
*
* @since 0.1.0
*/
token: string;
}
export interface GetIdTokenResultOptions {
/**
* Force refresh regardless of token expiration.
*
* @since 7.4.0
*/
forceRefresh: boolean;
}
export interface GetIdTokenResultResult {
/**
* The authentication time in milliseconds since the epoch.
*
* This is the time the user authenticated (signed in) and not the time the token was refreshed.
*
* @since 7.4.0
*/
authTime: number;
/**
* The ID token expiration time in milliseconds since the epoch.
*
* @since 7.4.0
*/
expirationTime: number;
/**
* The ID token issuance time in milliseconds since the epoch.
*
* @since 7.4.0
*/
issuedAtTime: number;
/**
* The sign-in provider through which the ID token was obtained.
*
* @since 7.4.0
*/
signInProvider: string | null;
/**
* The type of second factor associated with this session, provided the user was multi-factor
* authenticated (eg. phone, etc).
*
* @since 7.4.0
*/
signInSecondFactor: string | null;
/**
* The entire payload claims of the ID token including the standard reserved claims as well as
* the custom claims.
*
* @since 7.4.0
*/
claims: Record<string, unknown>;
}

Halaman ini dihasilkan dari plugin’s src/definitions.ts. Re-run sinkronisasi ketika publik API berubah di atas

Jika Anda menggunakan Getting Started untuk merencanakan autentikasi dan alur akun, hubungkannya dengan @capgo/capacitor-login-sosial untuk detail implementasi di @capgo/capacitor-login-sosial, @capgo/capacitor-kunci-pas untuk detail implementasi di @capgo/capacitor-kunci-pas, @capgo/capacitor-biometrik-asli untuk detail implementasi di @capgo/capacitor-biometrik-asli, Autentikasi dua faktor untuk detail implementasi di Autentikasi dua faktor, dan SSO (Perusahaan) untuk detail implementasi di SSO (Perusahaan).