Mulai
Copas prompt pengaturan dengan langkah instalasi dan panduan markdown lengkap untuk plugin ini.
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.
Pasang
Judul Bagian “Pasang”Anda dapat menggunakan Pengaturan Bantuan AI kami untuk memasang plugin. Tambahkan kemampuan Capgo ke alat AI Anda menggunakan perintah berikut:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsLalu gunakan prompt berikut:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-nfc` plugin in my project.Jika Anda lebih suka Pengaturan Manual, pasang plugin dengan menjalankan perintah-perintah berikut dan ikuti instruksi spesifik platform di bawah ini:
bun add @capgo/capacitor-nfcbunx cap syncImport
Judul Bagian “Import”import { CapacitorNfc } from '@capgo/capacitor-nfc';API Ringkasan
Judul Bagian “API Ringkasan”startScanning
Judul Bagian “startScanning”Mengaktifkan pemindaian tag NFC.
import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.startScanning();stopScanning
Judul Bagian “stopScanning”Menghentikan pemindaian tag NFC yang sedang berlangsung.
import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.stopScanning();write
Judul Bagian “write”Menulis rekaman NDEF yang disediakan ke tag terakhir yang ditemukan.
import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.write({} as WriteTagOptions);erase
Judul Bagian “hapus”Coba hapus tag terakhir yang ditemukan dengan menulis pesan NDEF kosong.
import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.erase();makeReadOnly
Judul Bagian “buatBacaSaja”Coba membuat tag terakhir yang ditemukan menjadi baca saja.
import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.makeReadOnly();Bagikan pesan NDEF dengan perangkat lain melalui peer-to-peer (hanya Android).
import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.share({} as ShareTagOptions);Hentikan berbagi pesan NDEF sebelumnya (hanya Android).
import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.unshare();getStatus
Judul Bagian “getStatus”Mengembalikan status NFC adapter saat ini.
import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.getStatus();showSettings
Judul Bagian “showSettings”Membuka halaman pengaturan sistem di mana pengguna dapat mengaktifkan NFC.
import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.showSettings();isSupported
Judul Bagian “isSupported”Mengecek apakah perangkat memiliki dukungan perangkat keras NFC.
Mengembalikan true jika perangkat memiliki perangkat keras NFC, tanpa peduli apakah NFC saat ini diaktifkan atau dinonaktifkan. Mengembalikan false jika perangkat tidak memiliki perangkat keras NFC.
Pakai metode ini untuk menentukan apakah fitur NFC harus ditampilkan di UI aplikasi Anda. Untuk mengecek apakah NFC saat ini diaktifkan, gunakan getStatus().
import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.isSupported();Referensi Tipe
Bab berjudul “Referensi Tipe”StartScanningOptions
Bab berjudul “StartScanningOptions”Opsi yang mengontrol perilaku dari .
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
Bab berjudul “WriteTagOptions”Opsi yang digunakan ketika menulis pesan NDEF pada tag saat ini.
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
Bab berjudul “ShareTagOptions”Opsi yang digunakan ketika berbagi pesan NDEF dengan perangkat lain menggunakan Android Beam / P2P mode.
export interface ShareTagOptions { records: NdefRecord[];}NfcStatus
Judul Bagian berjudul “NfcStatus”Mungkin status tag NFC yang dikembalikan oleh .
export type NfcStatus = 'NFC_OK' | 'NO_NFC' | 'NFC_DISABLED' | 'NDEF_PUSH_DISABLED';NfcEvent
Judul Bagian berjudul “NfcEvent”Event pencarian NFC umum yang dipancarkan oleh plugin.
export interface NfcEvent { type: NfcEventType; tag: NfcTag;}NfcStateChangeEvent
Judul Bagian berjudul “NfcStateChangeEvent”Event yang dipancarkan ketika ketersediaan tag NFC berubah.
export interface NfcStateChangeEvent { status: NfcStatus; enabled: boolean;}NdefRecord
Judul Bagian berjudul “NdefRecord”Struktur JSON yang mewakili satu rekaman NDEF.
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
Tajuk Bagian “NfcEventType”Jenis acara yang menjelaskan jenis penemuan NFC yang terjadi.
export type NfcEventType = 'tag' | 'ndef' | 'ndef-mime' | 'ndef-formatable';NfcTag
Tajuk Bagian “NfcTag”Pemwakilan informasi tag penuh yang dikembalikan oleh lapisan asli.
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;}Sumber Kebenaran
Tajuk Bagian “Sumber Kebenaran”Halaman ini dihasilkan dari plugin’s src/definitions.ts. Re-run sinkronisasi ketika API publik berubah secara upstream.
Teruskan dari Getting Started
Tajuk Bagian “Teruskan dari Getting Started”Jika Anda menggunakan Mulai untuk merencanakan dashboard dan operasi API, hubungkannya dengan Menggunakan @capgo/capacitor-nfc untuk kemampuan asli dalam Menggunakan @capgo/capacitor-nfc, Ringkasan API untuk detail implementasi dalam Ringkasan API, Pendahuluan untuk detail implementasi dalam Pendahuluan, Kunci API untuk detail implementasi dalam Kunci API, dan Perangkat untuk detail implementasi di Perangkat.