こんにちは。ニノです。
今回は「NFCタグ」を使ってAndroidアプリを作っていきます。

NFCタグとは

まず、「NFC(Near Field Communication)」とは近距離無線通信規格の一種です。
データの送受信や機器の認証に使われます。
身近なものとしては、スマホに搭載されている おサイフケータイなどの電子マネー、
SuicaやPASMOなどのICカードにも使われています。

(正確には日本で使われているものは「FeliCa」というソニーが開発した技術であり、NFCの中の規格の一つです。
国際標準規格のNFCに対して日本だけ独自規格になっているため、海外製SIMフリースマホの多くでは
NFCを搭載していてもこれらの電子マネーは使えなかったり…)

次に「NFCタグ」についてですが
NFCタグの外観は、以下のような小さなシールみたいな感じです。こちらのサイズは500円玉ほどの大きさで、
10枚入りが1000円以内で手に入ります。

このNFCタグをどのように使うのかと言いますと、NFCに対応したスマホをかざして、データを書き込んだり、
読み取ったりすることができます。

NFCタグで何ができる?

NFCタグにスマホをかざすだけでデータを読み書きできることを活かして、スマホの操作を自動化することができます。
例えば、事前に固有のアクションを書き込んでおくことで、NFCタグにスマホをかざすだけで

  • 家に帰ったときにWiFiに接続したり
  • いつも買っている日用品の購入サイトを開いたり
  • 寝る前にサクッとアラームを設定したり
  • 車に乗ったときにマップアプリを起動してBluetoothをONにしたり
  • スマートリモコンと連携して、家電を操作したり

などなど、応用すれば、色々な場所に貼ってちょっとした面白いことができそうです。

ID情報を読み取るAndroidアプリをKotlinで作成

手始めに、NFCタグのID情報を読み取る基本的なAndroidアプリを作りたいと思います。
開発環境は「Android Studio」、言語は「Kotlin」を選びました。

まずは「AndroidManifest.xml」にNFCを扱う権限を追加します。

次に「MainActivity.kt」になります。

起動時に呼ばれるonCreateメソッドでIntentに必要な情報を設定し、onResumeメソッドでNFCタグの検出を有効化。
あとは、NFCタグを検出するたびにonNewIntentメソッドが呼び出されます。
onNewIntentメソッドでは、NFCタグのID情報をbyte配列で取得、それを16進数に整形し、
画面に定義されたTextViewに表示しています。

実際にNFCタグにAndroidスマホをかざすと、このように画面にID情報が表示されます。

次回はデータの読み書きをやってみようと思います。

TOP
TOP