Lompat ke Konten

Getting Started

Jendela terminal
bun add @capgo/capacitor-firebase-authentication
bunx cap sync
import { FirebaseAuthentication } from '@capgo/capacitor-firebase-authentication';

Mengaplikasikan kode verifikasi code yang dikirimkan melalui email.

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

Mengakhiri proses pengaturan ulang kata sandi.

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

Mengakhiri 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 dibuat, pengguna 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 saat ini masuk.

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

Mengembalikan ‘ 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 Auth Firebase untuk pengguna yang saat ini masuk.

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

Mengembalikan token JSON Web (JWT) yang telah dideserialisasi dan digunakan untuk mengidentifikasi pengguna pada layanan Firebase.

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

Mengembalikan SignInResult dari aliran sign-in berbasis redirect.

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

Hanya tersedia untuk Web.

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

Ambil ID tenant.

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

Mengecek apakah tautan masuk adalah tautan masuk dengan 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. Opsi konfigurasi tidak berpengaruh di sini. skipNativeAuth Salin ke clipboard

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

Salin ke clipboard

Pengguna harus sudah masuk ke layer native. skipNativeAuth Opsi konfigurasi tidak berpengaruh 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 ke 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 ke layer native. 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. Tidak ada pengaruh dari opsi konfigurasi di sini. skipNativeAuth Hanya tersedia untuk iOS.

Salin ke clipboard

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

Links the user account with GitHub authentication provider.

Salin ke clipboard skipNativeAuth Menghubungkan akun pengguna dengan penyedia autentikasi GitHub.

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

Menghubungkan akun pengguna dengan penyedia autentikasi Google.

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.linkWithGoogle();

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

Salin ke clipboard skipNativeAuth Bagian berjudul “linkWithOpenIdConnect”

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

linkWithOpenIdConnect

]}

targetLanguage

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

Menghubungkan akun pengguna dengan penyedia autentikasi Nomor Telepon.

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

untuk menerima pemberitahuan ketika verifikasi selesai. Gunakan phoneVerificationCompleted untuk menerima pemberitahuan ketika verifikasi gagal. Gunakan phoneVerificationFailed untuk mendapatkan id verifikasi. phoneCodeSent Salin ke clipboard

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

Salin ke clipboard

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

Hanya tersedia untuk Android.

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

Menghubungkan akun pengguna dengan penyedia autentikasi Twitter.

Pengguna harus sudah masuk ke layer native. skipNativeAuth Opsi konfigurasi 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 konfigurasi tidak berpengaruh di sini.

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

Memulihkan data akun pengguna, jika sudah masuk.

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

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

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

Mengirimkan email verifikasi kepada pengguna yang sudah masuk.

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

Mengirim email pengaturan kata sandi.

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

Mengirim tautan login ke pengguna dengan alamat email yang ditentukan.

Untuk menyelesaikan login dengan tautan email, panggil signInWithEmailLink dengan alamat email dan tautan email yang disediakan dalam email yang dikirimkan ke 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();

Mulai alur sign-in Token kustom.

Metode ini tidak dapat digunakan bersamaan dengan skipNativeAuth pada Android dan iOS. Dalam kasus ini Anda harus menggunakan antarmuka Firebase JS __CAPGO_KEEP_0__ secara langsung. signInWithCustomToken interface of the Firebase JS SDK directly.

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

Salin ke clipboard

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

Salin ke clipboard

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

Mulai alur sign-in Facebook.

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

Mulai alur sign-in Game Center.

Hanya tersedia untuk iOS.

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

Mulai alur sign-in GitHub.

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

Mulai alur sign-in 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);

Mulai alur masuk menggunakan nomor telepon.

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

Hanya tersedia untuk Android dan iOS.

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

Mulai alur masuk Play Games.

Hanya tersedia untuk Android.

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

Mulai alur masuk Twitter.

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

Mulai alur masuk Yahoo.

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

Mulai alur keluar.

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

Menghapus penyedia dari akun pengguna.

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

Mengupdate alamat email pengguna yang saat ini masuk.

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

Mengupdate kata sandi pengguna.

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

Mengupdate data profil pengguna.

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

Mengatur bahasa pengguna code menjadi bahasa aplikasi default.

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

Menginstrument aplikasi 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 sedang masuk.

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

Mengecek status saat ini dari transparansi aplikasi pengiklan.

Hanya tersedia di iOS.

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

Membuka dialog sistem untuk mengizinkan transparansi aplikasi pengiklan.

Perhatian: Pengguna mungkin telah menonaktifkan permintaan pengiklan di pengaturan perangkat, lihat Dokumentasi Apple.

Hanya tersedia di iOS.

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

Referensi Tipe

Referensi Tipe

ApplyActionCodeOptions

Referensi Opsi Kode Aksi
export interface ApplyActionCodeOptions {
/**
* A verification code sent to the user.
*
* @since 0.2.2
*/
oobCode: string;
}

ConfirmPasswordResetOptions

Referensi Opsi Konfirmasi Reset Sandi
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;
}

ConfirmVerificationCodeOptions

Referensi Opsi Konfirmasi Kode Verifikasi
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;
}

CreateUserWithEmailAndPasswordOptions

Referensi Opsi Membuat Pengguna dengan Sandi
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. Jalankan ulang sinkronisasi ketika API publik 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-passkey for the implementation detail in @capgo/capacitor-passkey, @capgo/capacitor-native-biometric for the implementation detail in @capgo/capacitor-native-biometric, Autentikasi dua faktor untuk detail implementasi di Autentikasi dua faktor, dan SSO (Perusahaan) untuk detail implementasi di SSO (Perusahaan).