Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Android Beam利用アプリ紹介    +関連技術ネタ         2012/03/17  @korodroid(神原 健一)
自己紹介■氏名:神原 健一(@korodroid)■活動:iplatform.org(http://www.iplatform.org/)■所属:NTTソフトウェア株式会社■主な活動(iplatform.org@プライベート)  ■ Googl...
目次1.Android Beamとは?2.デモンストレーション3.技術ネタ                    3
1.Android Beamとは?                    4
【Android Beamの前に】NFCとは?   タッチするだけで簡単にデータの     やり取りを可能とする機構              ①NFCの読み書き                          ②端末間の通信 NFCカード(...
【Android Beamの前に】NFCとは?   タッチするだけで簡単にデータの     やり取りを可能とする機構              ①NFCの読み書き                          ②端末間の通信 NFCカード(...
Android Beamとは?   「端末間の通信」を利用したもので、 利用中のアプリに関する情報を送ることが可能    (Android 4.0端末でのみ利用可能)                  例えば、ブラウジン            ...
2.デモンストレーション【Android Beam利用アプリ】                      8
『Profile Beam(Profeam)』■Beamでお互いのTwitterアカウントを交換■Android4.0以上のNFC搭載機種に対応(無料) ➡Galaxy Nexus 4.x,Nexus S 4.x
Android Beamの特徴      面倒なペアリング不要で、  気軽に軽量データの送受信に向いている。•タッチ後「タップしてビーム」押下でデータ送信 ➡送信データは開発するアプリで制御可能•Beam非対応アプリでもマーケットURL送信可能...
3.Android Beamの技術ネタ                      11
Android Beamによるデータ送信                NDEF(※)形式のメッセージを                Push型で送信することで実現                        Android Beamによる...
方式②の実装例                 a.端末がBeam圏内に入った時 【コールバック登録】NfcAdapterクラスのsetNdefPushMessageCallback【コールバックメソッド】public NdefMessage ...
方式②の実装例                  a.端末がBeam圏内に入った時 【コールバック登録】NfcAdapterクラスのsetNdefPushMessageCallback                     NdefMessa...
方式②の実装例         b.Beamでの情報送信が完了した時【コールバック登録】NfcAdapterクラスのsetOnNdefPushCompleteCallback【コールバックメソッド】public void onNdefPushC...
Android Beamによるデータ受信           NDEF形式のメッセージが詰まった           Intentから中身を取り出すことで実現                     Android Beamによる情報受信 if...
Android Beamのまとめ•タッチ後「タップしてビーム」押下でデータ送信•データ送信時のデータフォーマットはNDEF形式•コールバック実装により、以下の制御を実施 ➡端末が近づいたときの送信メッセージ ➡データ送信完了時の任意処理    ...
おわりにご清聴ありがとうございました。              18
Upcoming SlideShare
Loading in …5
×

Beam利用アプリ紹介+関連技術ネタ

2,814 views

Published on

NFC勉強会第1回資料

Published in: Technology
  • Be the first to comment

Beam利用アプリ紹介+関連技術ネタ

  1. 1. Android Beam利用アプリ紹介 +関連技術ネタ 2012/03/17 @korodroid(神原 健一)
  2. 2. 自己紹介■氏名:神原 健一(@korodroid)■活動:iplatform.org(http://www.iplatform.org/)■所属:NTTソフトウェア株式会社■主な活動(iplatform.org@プライベート) ■ Google Play向けアプリ開発(現在18本) 9 10 2
  3. 3. 目次1.Android Beamとは?2.デモンストレーション3.技術ネタ 3
  4. 4. 1.Android Beamとは? 4
  5. 5. 【Android Beamの前に】NFCとは? タッチするだけで簡単にデータの やり取りを可能とする機構 ①NFCの読み書き ②端末間の通信 NFCカード(タグ) スマートフォン ③カードとして動作 リーダーライター 5
  6. 6. 【Android Beamの前に】NFCとは? タッチするだけで簡単にデータの やり取りを可能とする機構 ①NFCの読み書き ②端末間の通信 NFCカード(タグ) スマートフォン ③カードとして動作 リーダーライター 6
  7. 7. Android Beamとは? 「端末間の通信」を利用したもので、 利用中のアプリに関する情報を送ることが可能 (Android 4.0端末でのみ利用可能) 例えば、ブラウジン グ中に端末を近づけると 続いて、 画面をタッチ【Beamで送られるデータ例】•WebサイトのURL•YouTubeのURL 同じURLが相手の端•アドレス帳の連絡先 末で自動的に開かれる 7
  8. 8. 2.デモンストレーション【Android Beam利用アプリ】 8
  9. 9. 『Profile Beam(Profeam)』■Beamでお互いのTwitterアカウントを交換■Android4.0以上のNFC搭載機種に対応(無料) ➡Galaxy Nexus 4.x,Nexus S 4.x
  10. 10. Android Beamの特徴 面倒なペアリング不要で、 気軽に軽量データの送受信に向いている。•タッチ後「タップしてビーム」押下でデータ送信 ➡送信データは開発するアプリで制御可能•Beam非対応アプリでもマーケットURL送信可能 ➡デフォルトでは、マーケットURL送信•一方でも画面ロックしている場合、動作しない ➡Beamするには予め画面ロック解除が必要 10
  11. 11. 3.Android Beamの技術ネタ 11
  12. 12. Android Beamによるデータ送信 NDEF(※)形式のメッセージを Push型で送信することで実現 Android Beamによる情報送信【方式①】送信するメッセージをあらかじめセットする[NfcAdapter#setNdefPushMessage()]【方式②】端末がBeam圏内に入った時、Beamでの情報送信が完了した時のコールバックをセットする[NfcAdapter#setNdefPushMessageCallback,setOnNdefPushCompleteCallback]※NDEF:NFCによる通信時にやり取りし易いデータフォーマット 12
  13. 13. 方式②の実装例 a.端末がBeam圏内に入った時 【コールバック登録】NfcAdapterクラスのsetNdefPushMessageCallback【コールバックメソッド】public NdefMessage createNdefMessage(NfcEvent event)【実装例】条件を満たした時に送信するメッセージの作成NdefMessage msg = new NdefMessage(new NdefRecord[] { new NdefRecord(NdefRecord.TNF_MIME_MEDIA, "application/org.hogecompany.android.beam.sample". getBytes(Charset.forName("UTF-8")), new byte[0], “hellohellohello”.getBytes()), NdefRecord.createApplicationRecord("org.hogecompany.android.beam.sample")}); 13
  14. 14. 方式②の実装例 a.端末がBeam圏内に入った時 【コールバック登録】NfcAdapterクラスのsetNdefPushMessageCallback NdefMessage NdefRecord【条件を満たした時にコールバックされるメソッド】 (送信データ)public NdefMessage createNdefMessage(NfcEvent event) NdefRecord (Android Application Record)【実装例】条件を満たした時に送信するメッセージの作成NdefMessage msg = new NdefMessage(new NdefRecord[] { new NdefRecord(NdefRecord.TNF_MIME_MEDIA, "application/org.hogecompany.android.beam.sample". getBytes(Charset.forName("UTF-8")), new byte[0], “hellohellohello”.getBytes()), NdefRecord .createApplicationRecord("org.iplatform.android.beam.sample")}); 14
  15. 15. 方式②の実装例 b.Beamでの情報送信が完了した時【コールバック登録】NfcAdapterクラスのsetOnNdefPushCompleteCallback【コールバックメソッド】public void onNdefPushComplete(NfcEvent event)【実装例】送信が完了した旨を画面でユーザに通知する等(Toast表示、プログレスバー停止等) 15
  16. 16. Android Beamによるデータ受信 NDEF形式のメッセージが詰まった Intentから中身を取り出すことで実現 Android Beamによる情報受信 if (NfcAdapter.ACTION_NDEF_DISCOVERED.equals(intent.getAction())) { Parcelable[] msgs = intent .getParcelableArrayExtra(NfcAdapter.EXTRA_NDEF_MESSAGES); NdefMessage msg = (NdefMessage) msgs[0]; Log.i(“TAG”, new String(msg.getRecords()[0].getPayload())));} 16
  17. 17. Android Beamのまとめ•タッチ後「タップしてビーム」押下でデータ送信•データ送信時のデータフォーマットはNDEF形式•コールバック実装により、以下の制御を実施 ➡端末が近づいたときの送信メッセージ ➡データ送信完了時の任意処理 17
  18. 18. おわりにご清聴ありがとうございました。 18

×