Saltar al contenido principal
@capgo/capacitor-firebase-authentication Auth y seguridad Código abierto

Firebase Authentication plugin Capacitor

Plugin de Capacitor para Firebase Authentication

Instalar

bun add @capgo/capacitor-firebase-authentication bunx cap sync
npm, pnpm o yarn
  • npm install @capgo/capacitor-firebase-authentication
  • pnpm add @capgo/capacitor-firebase-authentication
  • yarn add @capgo/capacitor-firebase-authentication

Guía

Cómo usar Firebase Authentication en Capacitor

Uso de @capgo/capacitor-firebase-authentication

Plugin de Capacitor para Firebase Authentication.

Instalar

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

bunx cap sync copia el code nativo del plugin en tus proyectos nativos. Ejecútalo de nuevo tras cada actualización del plugin.

Importar

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

API de un vistazo

Método Descripción
applyActionCode Aplica un code de verificación enviado al usuario por email.
confirmPasswordReset Completa el proceso de restablecimiento de contraseña.
confirmVerificationCode Finaliza el proceso de verificación del número de teléfono.
createUserWithEmailAndPassword Crea una nueva cuenta con email y contraseña. Si se crea la cuenta, el usuario inicia sesión automáticamente.
deleteUser Elimina al usuario y cierra la sesión.
fetchSignInMethodsForEmail Obtiene los métodos de inicio de sesión para un email.
getCurrentUser Obtiene el usuario que ha iniciado sesión actualmente.
getPendingAuthResult Devuelve el SignInResult si tu app inició un flujo de inicio de sesión web y el SO cierra la app mientras está en segundo plano.
getIdToken Obtiene el Firebase Auth ID Token del usuario autenticado actualmente.
getIdTokenResult Devuelve un JSON Web Token (JWT) deserializado usado para identificar al usuario ante un servicio de Firebase.
getRedirectResult Devuelve el SignInResult del flujo de inicio de sesión basado en redirección.
getTenantId Obtén el tenant id.
isSignInWithEmailLink Comprueba si un enlace entrante es un inicio de sesión con email apto para signInWithEmailLink.
linkWithApple Vincula la cuenta de usuario con el proveedor de autenticación de Apple.
linkWithEmailAndPassword Vincula la cuenta de usuario con el proveedor de autenticación de Email.
linkWithEmailLink Vincula la cuenta de usuario con el proveedor de autenticación de Email.
linkWithFacebook Vincula la cuenta de usuario con el proveedor de autenticación de Facebook.
linkWithGameCenter Vincula la cuenta de usuario con el proveedor de Game Center.
linkWithGithub Vincula la cuenta de usuario con el proveedor GitHub.
linkWithGoogle Vincula la cuenta de usuario con el proveedor de Google.
linkWithMicrosoft Vincula la cuenta de usuario con el proveedor de Microsoft.
linkWithOpenIdConnect Vincula la cuenta de usuario con un proveedor OpenID Connect.
linkWithPhoneNumber Vincula la cuenta de usuario con el proveedor de número de teléfono.
linkWithPlayGames Vincula la cuenta de usuario con el proveedor de Play Games.
linkWithTwitter Vincula la cuenta de usuario con el proveedor de Twitter.
linkWithYahoo Vincula la cuenta de usuario con el proveedor de Yahoo.
reload Recarga los datos de la cuenta si hay una sesión activa.
revokeAccessToken Revoca el access token indicado. Actualmente solo admite access tokens de Apple OAuth.
sendEmailVerification Envía un email de verificación al usuario con la sesión iniciada.
sendPasswordResetEmail Envía un email para restablecer la contraseña.
sendSignInLinkToEmail Envía al usuario un enlace de inicio de sesión al email especificado.
setLanguageCode Establece el idioma de code para las operaciones de autenticación.
setPersistence Define el tipo de persistencia de la sesión de auth actual.
setTenantId Establece el id del tenant.
signInAnonymously Inicia sesión como usuario anónimo.
signInWithApple Inicia el flujo de inicio de sesión con Apple.
signInWithCustomToken Inicia el flujo de inicio de sesión con Custom Token.
signInWithEmailAndPassword Inicia el flujo de inicio de sesión con email y contraseña.
signInWithEmailLink Inicia sesión con un email y un enlace de inicio de sesión.
signInWithFacebook Inicia el flujo de inicio de sesión con Facebook.
signInWithGameCenter Inicia el flujo de inicio de sesión de Game Center.
signInWithGithub Inicia el flujo de inicio de sesión de GitHub.
signInWithGoogle Inicia el flujo de inicio de sesión con Google.
signInWithMicrosoft Inicia el flujo de inicio de sesión de Microsoft.
signInWithOpenIdConnect Inicia el flujo de inicio de sesión de OpenID Connect.
signInWithPhoneNumber Inicia el flujo de inicio de sesión con número de teléfono.
signInWithPlayGames Inicia el flujo de inicio de sesión de Play Games.
signInWithTwitter Inicia el flujo de inicio de sesión con Twitter.
signInWithYahoo Inicia el flujo de inicio de sesión de Yahoo.
signOut Inicia el flujo de cierre de sesión.
unlink Desvincula un proveedor de una cuenta de usuario.
updateEmail Actualiza el email del usuario con sesión iniciada.
updatePassword Actualiza la contraseña del usuario que ha iniciado sesión.
updateProfile Actualiza los datos del perfil del usuario.
useAppLanguage Establece el idioma code que ve el usuario como idioma predeterminado de la app.
useEmulator Configura tu app para conectarse al emulador de Authentication.
verifyBeforeUpdateEmail Verifica la nueva dirección de email antes de actualizarla para el usuario conectado.
checkAppTrackingTransparencyPermission Comprueba el estado actual de la transparencia de seguimiento de la app.
requestAppTrackingTransparencyPermission Abre el diálogo del sistema para autorizar la transparencia de seguimiento.

Ejemplos

applyActionCode()

Aplica un code de verificación enviado al usuario por email.

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

await FirebaseAuthentication.applyActionCode({ oobCode: 'oob-code' });

confirmPasswordReset()

Completa el proceso de restablecimiento de contraseña.

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

await FirebaseAuthentication.confirmPasswordReset({
  oobCode: 'oob-code',
  newPassword: 'new-password',
});

confirmVerificationCode()

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

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

const result = await FirebaseAuthentication.confirmVerificationCode({
  verificationId: 'phoneCodeSent',
  verificationCode: 'phoneCodeSent',
});
// The result holds sensitive values: use it without logging it.

createUserWithEmailAndPassword()

Crea una cuenta nueva con email y contraseña. Si se crea con éxito, el usuario inicia sesión automáticamente.

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

const result = await FirebaseAuthentication.createUserWithEmailAndPassword({
  email: 'user@example.com',
  password: 'password',
});
// The result holds sensitive values: use it without logging it.

deleteUser()

Elimina la cuenta y cierra la sesión del usuario.

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

await FirebaseAuthentication.deleteUser();

fetchSignInMethodsForEmail()

Fetches the sign-in methods for an email address.

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

const result = await FirebaseAuthentication.fetchSignInMethodsForEmail({ email: 'user@example.com' });
console.log(result);

La tabla anterior enumera los 59 métodos principales. Los helpers de Listener, de versión y el contrato completo de cada método están documentados en la repositorio GitHub.

Escuchar eventos

addListener devuelve un handle. Llama handle.remove() cuando la pantalla se desmonte, o FirebaseAuthentication.removeAllListeners() para limpiar todos los listeners.

Referencia completa

Continúa desde Usar @capgo/capacitor-firebase-authentication

Si estás usando Uso de @capgo/capacitor-firebase-authentication para planificar los flujos de autenticación y de cuenta, conéctalo con @capgo/capacitor-social-login para los detalles de implementación en @capgo/capacitor-social-login, @capgo/capacitor-passkey para el detalle de implementación en @capgo/capacitor-passkey, @capgo/capacitor-native-biometric para el detalle de implementación en @capgo/capacitor-native-biometric, Autenticación de dos factores para el detalle de implementación en la autenticación de dos factores, y SSO (Enterprise) para el detalle de implementación en SSO (Enterprise).

FAQ

Firebase Authentication plugin FAQ

¿Cómo instalo el plugin Firebase Authentication en una app Capacitor?

Ejecuta "bun add @capgo/capacitor-firebase-authentication" (o "npm install @capgo/capacitor-firebase-authentication"), luego ejecuta "bunx cap sync" para que los proyectos de iOS y Android reconozcan el code nativo. Impórtalo desde "@capgo/capacitor-firebase-authentication" en el code de tu app.

¿Es compatible @capgo/capacitor-firebase-authentication con React, Vue y Angular?

Sí. Firebase Authentication es un paquete Capacitor, por lo que funciona con cualquier framework web que corra dentro de Capacitor, incluyendo Ionic, React, Vue, Angular, Svelte y JavaScript puro.

¿Qué versión de Capacitor es compatible con @capgo/capacitor-firebase-authentication?

Los plugins de Capgo siguen la versión mayor de Capacitor: usa la versión mayor del plugin que coincida con la versión mayor de tu Capacitor (por ejemplo, el plugin v8 con Capacitor 8). La tabla de compatibilidad del README de GitHub lista las versiones mantenidas.

¿Es @capgo/capacitor-firebase-authentication gratuito y de código abierto?

Sí. El código fuente de code es público en GitHub en https://github.com/Cap-go/capacitor-firebase/tree/main/packages/authentication y el paquete es gratuito en npm. Se agradecen los reportes de bugs y pull requests.

¿Puedo actualizar code que usa Firebase Authentication sin pasar por la revisión de la App Store?

Instalar o actualizar el plugin cambia el code nativo, así que requiere un nuevo build para la tienda. Después, los cambios de JavaScript, HTML y CSS que llamen al plugin se pueden publicar al instante con las live updates de Capgo.

Publica cambios en Firebase Authentication sin esperar la revisión de la app

Una vez que el plugin esté en tu store build, Capgo live updates envía tus cambios de JavaScript, HTML y CSS a los usuarios en minutos.

Empieza con Capgo