Saltar al contenido

Getting Started

GitHub

Puedes utilizar nuestra configuración asistida por IA para instalar el plugin. Agrega las Capgo habilidades a tu herramienta de IA utilizando el siguiente comando:

Ventana de terminal
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

Luego utilice el siguiente prompt:

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

Si prefiere la configuración manual, instale el plugin ejecutando los siguientes comandos y siguiendo las instrucciones específicas de la plataforma a continuación:

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

Aplica una verificación code enviada al usuario por correo electrónico.

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

Completa el proceso de restablecimiento de contraseña.

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

Finaliza el proceso de verificación del número de teléfono.

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

Crea una nueva cuenta de usuario con correo electrónico y contraseña. Si la nueva cuenta se creó, el usuario se inicia sesión automáticamente.

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

Elimina y cierra sesión al usuario.

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

Obtiene los métodos de inicio de sesión para una dirección de correo electrónico.

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

Obtiene al usuario actualmente conectado.

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

Devuelve el SignInResult si tu aplicación lanzó un flujo de inicio de sesión web y el sistema operativo elimina la aplicación mientras está en segundo plano.

Solo disponible para Android.

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

Obtiene el token de autenticación de Firebase para el usuario actualmente conectado.

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

Devuelve un token JSON Web (JWT) deserializado utilizado para identificar al usuario en un servicio de Firebase.

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

Devuelve el SignInResult desde el flujo de inicio de sesión basado en redirección.

Si el inicio de sesión fue infructuoso, falla con un error. SignInResult Si no se llamó ninguna operación de redirección, devuelve un

Solo disponible para Web.

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

Obtener el id del inquilino.

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

Verifica si un enlace de entrada es un inicio de sesión con enlace de correo electrónico adecuado para signInWithEmailLink.

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

Vincula la cuenta de usuario con el proveedor de autenticación de Apple.

El usuario debe estar conectado en el nivel nativo. La skipNativeAuth opción de configuración no tiene efecto aquí.

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

Vincula la cuenta de usuario con el proveedor de autenticación de Email.

El usuario debe estar conectado en el nivel nativo. La skipNativeAuth opción de configuración no tiene efecto aquí.

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

Vincula la cuenta de usuario con el proveedor de autenticación de Email.

El usuario debe estar conectado en el nivel nativo. La skipNativeAuth opción de configuración no tiene efecto aquí.

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

Conecta la cuenta de usuario con el proveedor de autenticación de Facebook.

El usuario debe estar conectado en el nivel nativo. La skipNativeAuth opción de configuración no tiene efecto aquí.

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

Conecta la cuenta de usuario con el proveedor de autenticación de Game Center.

El usuario debe estar conectado en el nivel nativo. La skipNativeAuth opción de configuración no tiene efecto aquí.

Solo disponible para iOS.

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

Conecta la cuenta de usuario con GitHub proveedor de autenticación.

El usuario debe estar conectado en el nivel nativo. La skipNativeAuth opción de configuración no tiene efecto aquí.

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

Conecta la cuenta de usuario con el proveedor de autenticación de Google.

El usuario debe estar conectado en el nivel nativo. La skipNativeAuth opción de configuración no tiene efecto aquí.

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

Conecta la cuenta de usuario con el proveedor de autenticación de Microsoft.

El usuario debe estar conectado en el nivel nativo. La skipNativeAuth opción de configuración no tiene efecto aquí.

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

Vincula la cuenta de usuario con un proveedor de OpenID Connect.

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

Vincula la cuenta de usuario con un proveedor de autenticación de número de teléfono.

El usuario debe estar conectado en el nivel nativo. La skipNativeAuth opción de configuración no tiene efecto aquí.

Utilice el phoneVerificationCompleted listener para ser notificado cuando la verificación esté completa. phoneVerificationFailed Utilice el phoneCodeSent listener para ser notificado cuando la verificación falla. Utilice el

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

Conecta la cuenta de usuario con el proveedor de autenticación de Play Games.

El usuario debe estar conectado en el nivel nativo. La skipNativeAuth opción de configuración no tiene efecto aquí.

Solo disponible para Android.

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

Conecta la cuenta de usuario con el proveedor de autenticación de Twitter.

El usuario debe estar conectado en el nivel nativo. La skipNativeAuth opción de configuración no tiene efecto aquí.

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

Conecta la cuenta de usuario con el proveedor de autenticación de Yahoo.

El usuario debe estar conectado en el nivel nativo. La skipNativeAuth opción de configuración no tiene efecto aquí.

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

Recarga los datos de la cuenta de usuario, si está conectado.

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

Revoca el token de acceso dado. Actualmente solo admite tokens de acceso OAuth de Apple.

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

Envía un correo electrónico de verificación al usuario actualmente conectado.

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

Envía un correo electrónico de restablecimiento de contraseña.

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

Envía un enlace de inicio de sesión por correo electrónico al usuario con la dirección de correo electrónico especificada.

Para completar el inicio de sesión con el enlace de correo electrónico, llama a signInWithEmailLink con la dirección de correo electrónico y el enlace de correo electrónico suministrados en el correo electrónico enviado al usuario.

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

Establece el idioma code para operaciones de autenticación.

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

Establece el tipo de persistencia para la sesión de autenticación actualmente guardada.

Solo disponible para Web.

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

Establece el id de inquilino.

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

Inicia sesión como usuario anónimo.

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

Inicia el flujo de inicio con Apple.

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

Inicia el flujo de inicio con Token personalizado.

Este método no se puede utilizar en combinación con skipNativeAuth en Android e iOS. En este caso, debes utilizar directamente el signInWithCustomToken interface de Firebase JS SDK.

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

Inicia el flujo de inicio utilizando un correo electrónico y contraseña.

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

Inicia sesión con un correo electrónico y enlace de inicio de sesión de correo electrónico.

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

Inicia el flujo de inicio de sesión de Facebook.

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

Inicia el flujo de inicio de sesión de Game Center.

Solo disponible para iOS.

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

Inicia el flujo de inicio de sesión GitHub.

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

Inicia el flujo de inicio de sesión de Google.

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

Inicia el flujo de inicio de sesión de Microsoft.

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

Inicia el flujo de inicio de sesión de OpenID Connect.

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

Inicia el flujo de inicio de sesión utilizando un número de teléfono.

Utilice el phoneVerificationCompleted escucha para ser notificada cuando la verificación esté completada. Utiliza el phoneVerificationFailed escucha para ser notificada cuando la verificación falla. Utiliza el phoneCodeSent escucha para obtener el id de verificación.

Solo disponible para Android y iOS.

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

Inicia el flujo de inicio de sesión de Play Games.

Solo disponible para Android.

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

Inicia el flujo de inicio de sesión de Twitter.

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

Inicia el flujo de inicio de sesión de Yahoo.

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

Inicia el flujo de cierre de sesión.

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

Desvincula un proveedor de una cuenta de usuario.

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

Actualiza la dirección de correo electrónico del usuario actualmente conectado.

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

Actualiza la contraseña del usuario actualmente conectado.

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

Actualiza los datos de perfil del usuario.

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

Establece el idioma de la interfaz de usuario code como el idioma predeterminado de la aplicación.

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

Instrumenta tu aplicación para que se comunique con el emulador de Autenticación.

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

Verifica la nueva dirección de correo electrónico antes de actualizar la dirección de correo electrónico del usuario actualmente conectado.

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

Verifica el estado actual de la transparencia de seguimiento de la aplicación.

Solo disponible en iOS.

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

Abre el diálogo del sistema para autorizar la transparencia de seguimiento de la aplicación.

Atención: El usuario puede haber deshabilitado la solicitud de seguimiento en los ajustes del dispositivo, consulte la documentación de Apple.

Solo disponible en 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>;
}

Esta página se genera desde el plugin’s src/definitions.tsRe-ruta la sincronización cuando el público API cambia en la fuente.

Si estás utilizando Getting Started para planificar la autenticación y los flujos de cuenta, conecte con @capgo/capacitor-login-social para los detalles de implementación en @capgo/capacitor-login-social, @capgo/capacitor-passkey para los detalles de implementación en @capgo/capacitor-passkey, @capgo/capacitor-biométrica-nativa para los detalles de implementación en @capgo/capacitor-biométrica-nativa, Autenticación de dos factores para los detalles de implementación en Autenticación de dos factores, y SSO (Empresas) para los detalles de implementación en SSO (Empresas).