Inicio
Copiar un prompt de configuración con los pasos de instalación y la guía de markdown completa para este plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-nfc`
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/nfc/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.
Instalar
Sección titulada “Instalar”bun add @capgo/capacitor-nfcbunx cap syncImportar
Sección titulada “Importar”import { CapacitorNfc } from '@capgo/capacitor-nfc';API Resumen
Sección titulada “API Resumen”startScanning
Sección titulada “startScanning”Escucha los etiquetas NFC.
import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.startScanning();stopScanning
Sección titulada “stopScanning”Detiene la sesión de escaneo NFC en curso.
import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.stopScanning();Copiar a portapapeles
import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.write({} as WriteTagOptions);erase
BorrarIntenta borrar la última etiqueta descubierta escribiendo un mensaje NDEF vacío.
import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.erase();makeReadOnly
Sección titulada “hacerlo de solo lectura”Intenta hacer la última etiqueta descubierta de solo lectura.
import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.makeReadOnly();Comparte un mensaje NDEF con otro dispositivo mediante p2p (solo Android).
import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.share({} as ShareTagOptions);Detiene la compartición del mensaje NDEF proporcionado anteriormente (solo Android).
import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.unshare();getStatus
Sección titulada “getStatus”Devuelve el estado actual del adaptador NFC.
import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.getStatus();showSettings
Sección titulada “showSettings”Abre la página de ajustes del sistema donde el usuario puede habilitar el NFC.
import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.showSettings();isSupported
Sección titulada “isSupported”Verifica si el dispositivo tiene soporte de hardware NFC.
Devuelve true si el dispositivo tiene hardware NFC, independientemente de si el NFC está actualmente habilitado o deshabilitado. Devuelve false si el dispositivo no tiene hardware NFC.
Utiliza este método para determinar si se deben mostrar las características de NFC en la interfaz de usuario de tu aplicación. Para verificar si el NFC está actualmente habilitado, utiliza getStatus().
import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.isSupported();Referencia de tipos
Sección titulada “Referencia de tipos”StartScanningOptions
Sección titulada “Opciones de StartScanning”Opciones que controlan el comportamiento de .
export interface StartScanningOptions { /** * iOS-only: closes the NFC session automatically after the first successful tag read. * Defaults to `true`. */ invalidateAfterFirstRead?: boolean; /** * iOS-only: custom message displayed in the NFC system sheet while scanning. */ alertMessage?: string; /** * iOS-only: session type to use for NFC scanning. * - `'ndef'`: Uses NFCNDEFReaderSession (default). Only detects NDEF-formatted tags. * - `'tag'`: Uses NFCTagReaderSession. Detects both NDEF and non-NDEF tags (e.g., raw MIFARE tags). * Allows reading UID from unformatted tags. * **Requires** the `Near Field Communication Tag Reader Session Formats` entitlement * in your app with the `TAG` format included. Without it the session will fail to * start and the promise will reject with a `NO_NFC` error code. * Defaults to `'ndef'` for backward compatibility. */ iosSessionType?: 'ndef' | 'tag'; /** * Android-only: raw flags passed to `NfcAdapter.enableReaderMode`. * Defaults to enabling all tag types with skipping NDEF checks. */ androidReaderModeFlags?: number;}WriteTagOptions
Sección titulada “Opciones de escritura de etiquetas”Opciones utilizadas cuando se escribe un mensaje NDEF en la etiqueta actual.
export interface WriteTagOptions { /** * Array of records that compose the NDEF message to be written. */ records: NdefRecord[]; /** * When `true`, the plugin attempts to format NDEF-formattable tags before writing. * Defaults to `true`. */ allowFormat?: boolean;}ShareTagOptions
Sección titulada “Opciones de compartir etiquetas”Opciones utilizadas cuando se comparte un mensaje NDEF con otro dispositivo utilizando el modo Android Beam / P2P.
export interface ShareTagOptions { records: NdefRecord[];}NfcStatus
Sección titulada “Estado NFC”Posibles estados del adaptador NFC devueltos por .
export type NfcStatus = 'NFC_OK' | 'NO_NFC' | 'NFC_DISABLED' | 'NDEF_PUSH_DISABLED';NfcEvent
Sección titulada “Evento NFC”Evento de descubrimiento NFC genérico emitido por el plugin.
export interface NfcEvent { type: NfcEventType; tag: NfcTag;}NfcStateChangeEvent
Sección titulada “Cambio de estado del adaptador NFC”Evento emitido cada vez que cambia la disponibilidad del adaptador NFC.
export interface NfcStateChangeEvent { status: NfcStatus; enabled: boolean;}NdefRecord
Sección titulada “Registro NDEF”Estructura JSON que representa un registro NDEF individual.
export interface NdefRecord { /** * Type Name Format identifier. */ tnf: number; /** * Type field expressed as an array of byte values. */ type: number[]; /** * Record identifier expressed as an array of byte values. */ id: number[]; /** * Raw payload expressed as an array of byte values. */ payload: number[];}NfcEventType
Sección titulada “Tipo de evento NFC”Tipo de evento que describe el tipo de descubrimiento NFC que ocurrió.
export type NfcEventType = 'tag' | 'ndef' | 'ndef-mime' | 'ndef-formatable';Representación de la información completa de la etiqueta devuelta por las capas nativas.
export interface NfcTag { /** * Raw identifier bytes for the tag. */ id?: number[]; /** * List of Android tech strings (e.g. `android.nfc.tech.Ndef`). */ techTypes?: string[]; /** * Human readable tag type when available (e.g. `NFC Forum Type 2`, `MIFARE Ultralight`). */ type?: string | null; /** * Maximum writable size in bytes for tags that expose NDEF information. */ maxSize?: number | null; /** * Indicates whether the tag can be written to. */ isWritable?: boolean | null; /** * Indicates whether the tag can be permanently locked. */ canMakeReadOnly?: boolean | null; /** * Array of NDEF records discovered on the tag. */ ndefMessage?: NdefRecord[] | null;}Fuente de Verdad
Sección titulada “Fuente de Verdad”Esta página se genera a partir del plugin’s. Re-ejecutar la sincronización cuando el público __CAPGO_KEEP_0__ cambie en la fuente. src/definitions.ts. Re-run the sync when the public API changes upstream.