2012年01月19日

androidでNFCを使いfelica等のデータ読んでみる1

人気ブログランキングへ

Androidプログラミングバイブル SDK 4/3/2対応

新品価格
¥3,129から
(2012/1/19 06:46時点)



GALAXY NEXUSにはNFCがついています。
当然android4.0なのでandroid beamが売りですが、
マスタカはGALAXY NEXUSを1台しか持ってないのでbeamの開発ができません。
それどころか、まだbeamしたことがありません。

というわけで今回はNFCを使って
suicaやpasmo等のデータを読み込んでみた
これなら・・・一人で開発できる!!

マスタカ作成のandroidアプリ

・サンプルの動かし方
SDKの中のsampleにNFC DEMOがあるのでそれを使う。
ただし、そのままeclipseに持ってきても動かない。
以下のguava-librariesをビルドパスに追加してください。
http://code.google.com/p/guava-libraries/

これで動きます。


・GALAXY NEXUSの場合
GALAXY NEXUSでは、画面の裏側の下部に
felicaをかざすと反応します。


・felica読み込み後の挙動
動作の基本はintent filter
android.nfc.action.TAG_DISCOVERED
を指定して、felicaが近づいたときに
ブロードキャストインテントが投げられactivityが起動される。


・IDm
NFCでIDmが取れる。これはFelica製造時のユニークな番号らしい。
http://developers.orangetags.jp/words/idm
取得方法は以下。NfcAdapter.EXTRA_IDで取れる。
8byte(16桁)の数字な点が注意

・システムコード
・製造者
・TechList

以下の方法で3種類の値が取得が可能。
getParcelableExtraはintentに含まれているオブジェクトを取得しているようだ。
タグを取得して、NfcFにしてタグの情報を取得している。

・データについて
suica・pasmo・GALAPAGOS 003shのおサイフケータイ・社員証・免許を
GALAXY NEXUSに近づけてみた。
suicaとpasmoのシステムコードは、は0003だった。
felica系は全部こうなのかもしれない。

また、免許以外のNFCの種類については、
android.nfc.tech.NfcFとなっていた。
NFC-F (JIS 6319-4) properties らしいので日本独自仕様の件だろう

最後に、免許だけはNfcFが取れませんでした。
そのため、システムコード等はすべて確認不能

NFCでsuica等のデータを読み込むのは
結構面白いのでぜひやってみてください。
そろそろbeamも使ってみたい

参考サイト
http://www.saturn.dti.ne.jp/npaka/android/NFCEx/index.html
http://yumewaza.yumemi.co.jp/2011/03/nexuss_nfc_gettechlist.html


posted by マスタカ at 06:57 | Comment(0) | TrackBack(0) | PC・携帯 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。