Upload
yoshiaki-nakanishi
View
4.104
Download
0
Embed Size (px)
DESCRIPTION
ABC2011 Winter の LTでの資料です。Android 2.3でのNFCの使い方はスルーして、周辺的なことについていろいろ。
Citation preview
ANDROID に NFC がやってきた
ブライテクノ株式会社代表取締役 中西 良明twitter @chun_ryo
この LT で話すこと NFC とはどんなものなのか Android 2.3 で取り込まれた NFC の範囲 役に立たないこと
この LT で話さないこと Android 2.3 で追加された NFC API の使い方
→ デ部の発表や、後日公開される資料がおすすめ
NFC
Near Field Communication
近距離無線通信の規格の名称
近接距離 ( ~ 10cm) の範囲までの技術をまとめたもの 複数の無線規格をカバー (Type A, Type B, FeliCa) 数~数十メートル飛ぶような通信規格 ( 無線
LAN 、 Bluetooth など ) は、直接的には対象外
NFC って何がすごいの? 携帯電話でお店のお買い物が出来る ( ようになるか
もしれない ) 日本では当たり前です
携帯電話をタッチするだけでいろんな情報を簡単に取り込める ( ようになるかもしれない ) ! i アプリで IC タグリーダーアプリが配布されてます
携帯電話間でデータ ( 電話帳など ) を直接、簡単にデータを交換できる 日本では赤外線通信がついているケータイが主流 各種 Android 端末や iPhone 同士なら Bump
日本のおサイフケータイはすごい
NFC のいいところはないの? 様々な無線方式に対応している国際規格
ISO 14443 Type A ( 世界で広く普及している。 MIFARE など。カード・タグが比較的安価 )
同 Type B ( 日本の住基カードで使っている通信方式 ) FeliCa ( 日本やアジア一部で主流の方式 ) ISO 15693 ( 流通などで用いられる安価な無線タグ。
RFID)
NFC 対応端末なら、海外でもサービスを受けられるかも
海外でのビジネスチャンスがあるかも
NFC の機能・特徴 カードエミュレーション
端末が非接触 IC カードのように振舞う カードリーダ・ライタエミュレーション
端末が非接触 IC カードの読み書きを行う 端末間通信
NFC 無線を用いて端末間で双方向通信を行う( 非常に近距離なので傍受されにくい )
NFC 端末間ペアリング ( リーダ・ライタと端末間通信の応用 ) タッチして情報交換し Bluetooth や WiFi の接続認証
を行う参考: NFC ポータルサイトなどhttp://www.nfc-world.com/
ANDROID 2.3 がサポートする NFC 機能 カードリード(・ライト)機能対応!
タッチすると、 IC カード・タグのデータが intent で飛んでくる
ただし、 NDEF(*) というデータ形式の受信以外は扱わない Suica の残高調べたりできない orz データの書き込みできない orz
カードエミュレーション機能非対応 orz おサイフケータイ的なお買い物が出来ない!
端末間通信機能非対応 orz端末間のデータ交換が出来ない!
単なる NDEF タグ読み機かよ! orz (*) NDEF : NFC Data Exchange Format
NFC 規格が定めているデータ交換用のフォーマット
公式に
某漫画の某先生曰く、
あきらめたら
そこで試合終了
ですよ・・・?
あきらめの悪いすごい人たち 公開 API の縛りがなければ出来るんじゃないか?
Gingerbread のソースコードを調べてみると、下回りはいろいろ対応している
ANDROID 2.3 がサポートする NFC 機能 カードリード・ライト機能対応
カードとの RAW レベルでのコマンドのやりとり可能 NDEF に限定しないデータを読める
Nexus S からカードへの直接書き込みも ( おそらく )可能 書き込み可能なカード入手後、確認予定
カードエミュレーション機能対応 ( っぽい ) このモードでリーダ・ライタ (Suica の改札など ) にかざ
すと、内部的に非公開 intent が飛ぶ (*) 端末間通信機能非対応 ( っぽい )
通信相手発見時に、内部的に非公開 intent が飛ぶ (*)
非公式に
(*) 現在のところ、これらの非公開 intent の受け手はいない
気になること 日本のおサイフケータイ対応 Android 端末
は、 2.3 へのアップデートで NFC 対応するのか? おサイフケータイの基本状態はカードエミュレーショ
ン Nexus S の基本状態はリーダ・ライタ
くわしくは WEB で!
blog 書いたら twitter アカウント @chun_ryo でお知らせ予定
今後やってみたいこと 端末のカードエミュレーションモードへの切り替え
( 日本のケータイと同じように )Nexus S で入退管理やマンションの入館などができるかも
端末間通信のアプリ作成 Nexus S が 2台必要になる……
ゲーム・玩具に埋めこまれたタグ読み込み可否調査 カード連携型アーケードゲームのカード仮面ライダー OOO(オーズ ) のオモチャ などなど
参考情報 Nexus S が使ってる NFC のチップは NXP の
PN544 http://www.engadget.com/2010/12/06/samsung-nex
us-s-utilizing-nxps-pn544-nfc-chip/
PN544 で出来ること 端末間通信: ISO 18092 フルサポート (最大 424Kbps) リーダ・ライタ : ISO14443 A/B, MIFARE, FeliCa, NFC
Forum タグ、 ISO 15693 カードエミュレーション: ISO 14443 A/B/B’, MIFARE,
FeliCa Nexus S で ISO 15693 の RFID のエミュレーションはできない
NDEF を書き込める FeliCa Lite RC-S965 (NFC Form Type 3 Tag準拠 )個人ならスイッチサイエンスから買える
NFC の非公開インテント NfcAdapter.ACTION_TRANSACTION_DETECTED
端末がカードエミュレーションモードの時に、リーダ・ライタにかざして、カード内のアプリケーションが選択された時に発生
NfcAdapter.ACTION_LLCP_LINK_STATE_CHANGED 端末間通信のアクティベート時、状態変化時に発生
NfcAdapter.ACTION_ADAPTER_STATE_CHANGE NfcAdapter の状態変化時に発生(未使用?)