Skip to content

はじめに

GitHub

AI-Assisted Setupを使用してプラグインをインストールできます。AIツールにCapgoスキルを追加するには、以下のコマンドを実行してください。

ターミナル画面
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

次に、以下のプロンプトを使用してください。

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

Manual Setupを使用する場合は、以下のコマンドを実行してください。プラットフォーム固有の指示に従ってください。

ターミナル画面
bun add @capgo/capacitor-nfc
bunx cap sync
import { CapacitorNfc } from '@capgo/capacitor-nfc';

APIの概要

APIの概要

NFCタグを待機中

import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.startScanning();

NFCスキャニングセッションを停止

import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.stopScanning();

最後に発見されたタグにNDEFレコードを書き込む

import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.write({} as WriteTagOptions);

最後に発見されたタグを消去するために空のNDEFメッセージを書き込もうとします。

import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.erase();

最後に発見されたタグを読み取り専用にします。

import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.makeReadOnly();

Androidのみで、別のデバイスにNDEFメッセージを共有します。

import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.share({} as ShareTagOptions);

Androidのみで、以前提供されたNDEFメッセージの共有を停止します。

import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.unshare();

NFC アダプターの現在の状態を返します。

import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.getStatus();

showSettings

設定を表示

システム設定画面を開き、ユーザーはNFCを有効にすることができます。

import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.showSettings();

デバイスがNFCハードウェアサポートを有するかどうかを確認します。

リターン true NFCハードウェアがデバイスに存在する場合、NFCが有効かどうかに関係なく、デバイス上のNFCハードウェアが存在する場合にのみ返します。 false NFCハードウェアが搭載されていない場合。

NFC機能を表示するようにアプリのUIに指示するには、この方法を使用します。 NFCが現在有効になっているかどうかを確認するには、 getStatus().

import { CapacitorNfc } from '@capgo/capacitor-nfc';
await CapacitorNfc.isSupported();

オプション (. の動作を制御)

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;
}

タグに NDEF メッセージを書き込む場合に使用されるオプション

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;
}

Android Beam / P2P モードで NDEF メッセージを他のデバイスに共有する場合に使用されるオプション

export interface ShareTagOptions {
records: NdefRecord[];
}

NfcStatus

NfcStatus

.で返される可能なNFCアダプタの状態

export type NfcStatus = 'NFC_OK' | 'NO_NFC' | 'NFC_DISABLED' | 'NDEF_PUSH_DISABLED';

NfcEvent

NfcEvent

プラグインが発行する一般的なNFC検出イベントです。

export interface NfcEvent {
type: NfcEventType;
tag: NfcTag;
}

NfcStateChangeEvent

NfcStateChangeEvent

NFCアダプタの利用可能性が変更されたときに発行されるイベントです。

export interface NfcStateChangeEvent {
status: NfcStatus;
enabled: boolean;
}

NdefRecord

NdefRecord

1つのNDEFレコードを表すJSON構造です。

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[];
}

Nfcディスクリプションの種類を表すイベントタイプ。

export type NfcEventType = 'tag' | 'ndef' | 'ndef-mime' | 'ndef-formatable';

ネイティブ層から返されたタグ情報の完全な表現。

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;
}

公開__CAPGO_KEEP_0__がアップストリームで変更されたときに再度Syncを実行してください。 src/definitions.ts. Re-run the sync when the public API changes upstream.

Getting Startedから続けてくださいのセクション

true

Capgoを使用している場合 はじめに ダッシュボードとAPIの操作を計画するには、 Capgoを使用して@capgo/capacitor-nfc Capgoを使用して@capgo/capacitor-nfcのネイティブ機能 APIの概要 APIの概要の実装詳細 導入 導入の実装詳細 APIのキー APIのキーに関する実装詳細 デバイス デバイスの実装詳細について。