Your SlideShare is downloading. ×
0
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Ndefってなんだろう
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Ndefってなんだろう

743

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
743
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
8
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. 避けては通れないバイナリ地獄 - NDEFってなんだろう 山下智樹 / tomorrowkey 12年11月29日木曜日
  • 2. もくじ • • • • • • • 12年11月29日木曜日 自己紹介 NDEFって何? なぜNDEFが重要になる? もっとNDEFを知ろう ちょっとRTD NDEF完成 さらなるNDEFの世界へ…
  • 3. 自己紹介 12年11月29日木曜日
  • 4. 自己紹介 • NFCラボ運営委員 • 山下智樹 / @tomorrowkey • 株式会社ブリリアントサービス • バイナリ楽しい! 12年11月29日木曜日
  • 5. NDEFって何? 12年11月29日木曜日
  • 6. NDEFとは • NFC Data Exchange Format • NFCの通信で使用されるデータ・フォ ーマット 12年11月29日木曜日
  • 7. なぜNDEFが重要になる? 12年11月29日木曜日
  • 8. NFCのモード • Reader/Writer Mode • P2P Mode • Card Emulation Mode 12年11月29日木曜日
  • 9. どんなモードでも NDEFは避けて通れない 12年11月29日木曜日
  • 10. でも、バイナリまで 知ってる必要あるの? 12年11月29日木曜日
  • 11. 各プラットフォームのNDEFについて • Android SDK API Level 16 • • • 一部サポート PAYLOADについては自作する必要あり 作成はRTD-URIのみサポート、パースはURIに関連するものをサ ポート • Windows(SDK for NFC Starter Kit Ver.1.0) • • 12年11月29日木曜日 コマンド発行までサポート NDEFはすべて自作する必要あり
  • 12. 探せばそのへんに ライブラリ落ちてます 12年11月29日木曜日
  • 13. 避けて通れます 12年11月29日木曜日
  • 14. 趣味です 12年11月29日木曜日
  • 15. もっとNDEFを知ろう 12年11月29日木曜日
  • 16. NDEF Message • NDEFには一つのNDEF Messageが含 まれる • NDEF Messageには1つ以上の NDEF Recordが含まれる 構成 12年11月29日木曜日
  • 17. NDEF Record 構成 12年11月29日木曜日
  • 18. FLAGS • MB(Message Begin) • • ME(Message End) • • 255Byte以下のレコードを意味する PAYLOAD LENGTHが1Byteになる IL(ID Length) • 12年11月29日木曜日 分割されたNDEF Messageの一部を意味する SR(Short Record) • • • NDEF Messageの終わりを意味する CF(Chunked Flag) • • NDEF Messageの始まりを意味する IDが設定されていることを意味する
  • 19. TNF (Type Name Format) • • TYPEフィールドの種類を表す 3bitの値を設定する • • • • • • • • 12年11月29日木曜日 0x00 Empty 0x01 NFC Forum well-known-type 0x02 Media-type as define in RFC2046 0x03 Absolute URI as define in RFC3986 0x04 NFC Forum external type 0x05 Unknown 0x06 Unchanged 0x07 Reserved
  • 20. TYPE LENGTH • • 12年11月29日木曜日 符号なし8bit整数 TYPEフィールドの長さを指定する
  • 21. PAYLOAD LENGTH • • • 12年11月29日木曜日 SRの値によって長さが変化する 符号なしビックエンディアン PAYLOADの長さを指定する
  • 22. ID LENGTH • • • 12年11月29日木曜日 ILの値によって無い場合がある 符号なし8bit整数 IDの長さを指定する
  • 23. TYPE • • • TYPE LENGTHによって長さが変わる TNFの値によって設定値が変わる 0x01 well-known typesだった場合 • • U ... URI Record • Sp ... Smart Poster • 12年11月29日木曜日 T ... Text Record ...
  • 24. ID • • • 12年11月29日木曜日 ILの値によって無い場合がある ID LENGTHによって長さが変わる IDを設定することができる
  • 25. PAYLOAD • • • 12年11月29日木曜日 PAYLOAD LENGTHの値によって長さが 変化する TNFとTYPEの値によって内容が変わる well-known typesの仕様書はNFC Forumに定義されています
  • 26. ちょっとRTD 12年11月29日木曜日
  • 27. RTD • Record Type Definition • Typeでwell-known-type(0x01)を指定 した場合に使用されるフォーマット • NFC Forumで仕様書を見ることができ ます。 • 12年11月29日木曜日 http://www.nfc-forum.org/specs/spec_list/#rtds
  • 28. RTDの種類 • Text • URI • SmartPoster • Generic Control • Handover Request / Select / Carrier • Signature 12年11月29日木曜日
  • 29. Textだけ紹介 構成 12年11月29日木曜日
  • 30. Encode • テキストの文字コードを表す • 0 ... UTF-8 • 1 ... UTF-16 12年11月29日木曜日
  • 31. RFU • Reserved For Future Use 12年11月29日木曜日
  • 32. Language Code Length • 言語コードの長さを指定する 12年11月29日木曜日
  • 33. Language Code • • • 言語コードを表す Language Code Lengthによって長さが変わる ISO/IANA • • • 12年11月29日木曜日 en ... English en-us ... English(United States) ja ... Japanese
  • 34. Actual Text • • • 12年11月29日木曜日 実際のテキスト PAYLOADの残り部分 Encodeで指定されたエンコードを使用する
  • 35. NDEF完成! 12年11月29日木曜日
  • 36. Hello, World.と書かれたNDEF • D1 02 65 2C 72 01 65 6C 20 6C 10 6E 6C 57 64 54 48 6F 6F 2E FLAGS • • • • • • • • • • Message End : 1 Chunked Flag : 0 Short Record : 1 ID Length : 0 TNF : 01(well-known types) TYPE LENGTH : 1 PAYLOAD LENGTH : 10 TYPE : T PAYLOAD • • • 12年11月29日木曜日 Message Begin : 1 Encoding : utf-8 Language Code : en Actual Text : Hello, World.
  • 37. さらなるNDEFの世界へ 12年11月29日木曜日
  • 38. まだ始まったばかり • 紹介したフォーマットはごく一部 • well-known-typeだけでも知っておく べき 12年11月29日木曜日
  • 39. おわり 12年11月29日木曜日

×