近距離無線通信(NFC)は近距離無線技術のセットであり、通常は接続を開始するために必要な距離が 4 cm 以下です。NFC を使用すると、NFC タグと Android 搭載デバイス間、または 2 つの Android 搭載デバイス間で小さなデータ ペイロードを共有できます。
タグの構成はさまざまです。シンプルなタグは、セマンティクスの読み取りと書き込みのみを提供します。場合によっては、カードを読み取り専用にするために 1 回限りのプログラム可能領域を使用します。複雑なタグは数学演算を提供し、セクターへのアクセスを認証する暗号ハードウェアを備えています。最も高度なタグには動作環境が含まれているため、タグで実行されるコードと複雑な操作が可能です。タグに格納されるデータはさまざまな形式で記述することもできますが、Android フレームワーク API の多くは、NDEF(NFC Data Exchange Format)と呼ばれる NFC フォーラム標準に基づいています。
NFC を搭載した Android デバイスは、主に次の 3 つの動作モードを同時にサポートします。
- リーダー/ライター モード。NFC デバイスがパッシブ NFC タグとステッカーの読み取りと書き込みを行うことができます。
- P2P モード: NFC デバイスが他の NFC ピアとデータを交換できるようにします。このオペレーション モードは Android ビームで使用されます。
- カード エミュレーション モード。NFC デバイス自体を NFC カードとして機能させることができます。エミュレートした NFC カードには、NFC POS 端末などの外部 NFC リーダーからアクセスできます。
- NFC の基本
- このドキュメントでは、Android が検出された NFC タグを処理する方法と、アプリに関連するデータをアプリに通知する方法について説明します。また、アプリで NDEF データを処理する方法、および Android の基本的な NFC 機能セットをサポートするフレームワーク API の概要についても説明します。
- 高度な NFC
- このドキュメントでは、Android がサポートするさまざまなタグ技術の利用を可能にする API について説明します。NDEF データを扱っていない場合、または Android で完全には認識できない NDEF データを扱っている場合は、独自のプロトコル スタックを使用して、手作業で RAW バイトでタグの読み取りまたは書き込みを行う必要があります。このような場合、Android は特定のタグ技術を検出し、独自のプロトコル スタックを使用してタグとの通信を開始するためのサポートを提供します。
- ホストベースのカード エミュレーション
- このドキュメントでは、Android デバイスがセキュア エレメントを使用せずに NFC カードとして機能し、任意の Android アプリでカードをエミュレートして NFC リーダーと直接通信できるようにする仕組みについて説明します。