近距離無線通信(NFC)の概要

近距離無線通信(NFC)は一連の短距離無線技術です。通常、接続を開始するには距離を 4 cm 以下にする必要があります。NFC を使用すると、NFC タグと Android 搭載デバイスの間、または 2 台の Android 搭載デバイス間で小さなペイロードのデータを共有できます。

タグの構成はさまざまです。シンプルなタグはセマンティクスの読み取りと書き込みのみを提供します。カードを読み取り専用とするために、プログラムできる回数を 1 回だけにすることもあります。複雑なタグは算術演算を提供し、セクタへのアクセスを認証する暗号ハードウェアを備えています。最も高度なタグにはオペレーティング環境が含まれているため、タグで実行されるコードと複雑なやり取りが可能です。また、タグに格納されるデータはさまざまな形式で記述できますが、多くの Android フレームワーク API は NDEF(NFC データ交換形式)と呼ばれるNFC フォーラム規格に基づいています。

NFC を搭載した Android デバイスでは、主に次の 2 つのオペレーション モードがサポートされます。

  1. 読み書きモード: NFC デバイスがパッシブ NFC タグとステッカーを読み書きできます。
  2. カード エミュレーション モード。NFC デバイス自体が NFC カードとして機能します。エミュレートされた NFC カードは、NFC POS 端末などの外部 NFC リーダーでアクセスできます。
NFC の基本
このドキュメントでは、Android が検出された NFC タグをどのように処理するか、アプリケーションに関連するデータをアプリケーションに通知する方法について説明します。また、アプリケーションの NDEF データの操作方法や、Android の基本的な NFC 機能セットをサポートするフレームワーク API の概要についても説明します。
高度な NFC
このドキュメントでは、Android がサポートするさまざまなタグ テクノロジーの利用が可能な API について説明します。NDEF データを操作していないときや、Android で完全にサポートできない NDEF データを操作している場合は、独自のプロトコル スタックを使用して、生のバイト列によるタグの読み書きを手動で行う必要があります。この場合、Android は特定のタグ テクノロジーの検出と独自のプロトコル スタックを使用したタグとの通信をサポートします。
ホストベースのカード エミュレーション
このドキュメントでは、Android デバイスがセキュア エレメントを使用せずに NFC カードとして機能する方法を説明します。Android アプリはカードをエミュレートして NFC リーダーと直接通信できるようになります。