iPhone4SからAndroid BEAM !?
Android Advent Calendar
本エントリは、Android Advent Calendar 2011の裏エントリにもなっています。
普段、ブログ書かないのですが、そうそうたるAndroiderが名を連ね注目度も高いだろうということで、こっそり参加させてもらいました。
iPhoneからAndroid BEAM !?
Galaxy Nexusが発売されて、入手された皆さんはきゃっきゃうふふとAndroid BEAMしてますよね?きっと。
残念ながら僕は持ってません。。。
後輩はGalaxy Nexusを入手したようです。ええのう。
iPhone4Sにしたばかりの僕には、Galaxy Nexusに手を出せませんが、
僕のiPhone4Sから後輩のGalaxy NexusにAndroid BEAMなら出せる気がします。
というわけで、この動画を見て下さい!
iPhone4Sで表示しているGoogle MapをタッチしてGalaxy Nexusへ!
見事な あんどろいどびーむ いや、あいふぉんびーむ か。
あいふぉんびーむ タネあかし
!?
そーです。RL-700Sで作成したNFCラベルをiPhone4Sのケースに貼り付けていたんですねー。
あ、NFCラベルプリンタについて知らない方はこちらの資料をご覧下さい。ちょっと古いですが、2011/5/23に名古屋ギークバーで行ったLT資料。
まぁ正確に言ったらNFCタグからビームが出ているわけではなく、Galaxy NexusがNFCタグの内容を読み取っているだけなのでコレをAndroid BEAMと呼ぶのは間違ってると思いますが、ユーザから見える挙動は一緒でしょ?
iPhoneがAndroid BEAMしたみたいに見えるよね!
ビーム用ラベルの作り方
初めに便利なアプリ2つ紹介します。
NFC TagInfo
NFCタグの内容を確認できるアプリですね。機能が充実しています。
NFC TagWriter
NFCタグの読み書きができるアプリですね。テキストやURLなどのデータをNDEF形式でNFCタグに書き込めるのでNFCタグ作成に大いに役立ちます。
まずは先ほどの あいふぉんびーむ したNFCタグをNFC TagInfoアプリで内容確認してみましょう。
タグハケーン!
NDEF messageの内容を確認してみると...
中身は?そうGoogle mapのURLです。
ふむ。じゃあ本物のAndroid BEAMはどんなビーム(情報)を出しているのでしょう?
後輩君のGalaxy NexusがAndroid BEAMするのを、開発用のNexusSでNFC TagInfo起動して待ち構えてみましょう!
動画と同じように今度はGalaxy NexusでGoogle mapで地図を表示した状態で、NexusSと背面同士タッチさせると、Galaxy Nexus側でビームするか?と出るのでビームしてみました。
結果は?
そう。NDEFでGoogle mapのURLを渡しているわけですよ。
YouTubeの動画の場合
ね。基本的にNDEFでデータを渡している。
ちなみに自作アプリは?
マーケットでアプリ検索のURLのNDEFとEXTERNAL_TYPEでパッケージ名のNDEFの2つ渡してる。
特にアプリ側でAndroid BEAMでこういうデータ渡したいって作りこみをしなければ、起動のためのアプリパッケージ名とインストールされていない場合にインストールを促すURLを送信するって挙動ですかね。(想像)
さぁそうとわかれば、このNDEFのNFCタグを作成すればいいわけですよ。
そこで活躍するのがTagWriterのアプリです。
今度はGalaxy NexusからGoogle MapのAndroid BEAMするのをNexusSではTagWriterを立ち上げ、
おぉHistoryに先ほど捕捉したNDEF URLの内容があります。
皆さんもNFCタグ用意して遊んでみて下さい。
え、手元にNFCタグが無い?
そんな方はこんなとこから調達してみてはいかがでしょう?20枚1,050円から買えますよ。
あ、でもICSにはこのバグがありますからね。
NDEF未フォーマットな生タグ買ってもNDEF書き込めません。。
これは早急に修正して欲しいですね。
あと、注意点としてはビームする内容は固定ですし、iPhoneに貼るならビームする内容の画面表示を自分であわせておくことがポイントです。にっかり。
XXビーム その他の例
RL-700Sで作成するNFCラベルはステッカーになってますからね。
別にスマホでなくても貼り付けたものからビームうてちゃうわけですよ!
例えば、
うちの娘の作ったあんどろいど(かまぼこの板製)
びーむ。
例えば、
うちの息子そのもの
おぉ、まさか...
あんどろいどび〜む!
あはは。超楽しい。
NFCアプリ楽しいよ
何もNFCはNFC搭載のスマホを2台用意しないと遊べないわけじゃないんです。
NFCタグとアプリの組合せでも楽しいこといっぱいできるわけですよ。
参考になればということで、3つほどNFCアプリをAndroidマーケットにアップしていますので、
それぞれ、どんなアプリでどんなNFCタグになっているか解説しておきますね。
twitterラベル診断
普通に読めばその人のtwitterページにとぶラベルを2枚読むことで、その2人がお互いフォローしてるか、twitter上での会話、ふぁぼり具合などから親密度を診断するアプリです。
実際のタグにはどんな情報が書き込まれているのでしょう?
本日表エントリの@kakenaviさんのタグを作成してみたので、これで確認してみましょう!
はい。普通にtwitterのその人のURLですね。
ということでこの http://twitter.com/kakenavi のkakenavi部分をそれぞれのtwitter idに変更したURL情報を書き込んだタグ用意すれば、このアプリ遊べますよ!
共通でフォローするユーザ137人はAndroidクラスタの方々いっぱい。
@kakenaviさんのtwitterやブログは超面白いですからね。
来年はお会いして、このラベルどっかでお渡しできるといいなぁ。
touch!ATND
WebアプリCheck!ATNDと連携してATNDのイベント出席確認するアプリです。
ATNDユーザにその人のATNDタグを用意してあげる。
イベントの際にそれを持ってきてもらい読み取ることで出席確認をとるわけです。
この辺りの人に絡むタグはNFCがスマホ標準搭載になったら、それこそAndroid BEAMみたいにP2Pで確認する実装にすべきでしょうが、こんな使い方もあるよっていう参考に。
実際のタグにはどんな情報が書き込まれているのでしょう?確認してみましょう。
こちらはこのアプリ専用のデータとしています。
NDEF MIME_MEDIAのタグでtypeがapplication/vnd.touchrl.atnd、PayloadはtextでATND id,nicknameって感じにしています。
このタグで起動するアプリを作成するにはManifestファイルのintent-filterに
<intent-filter> <action android:name="android.nfc.action.NDEF_DISCOVERED" /> <category android:name="android.intent.category.DEFAULT" /> <data android:mimeType="application/vnd.touchrl.atnd" /> </intent-filter>
なんて書けばいいわけです。
このタグはTagWriterからは作成できませんが、作るべきタグの仕様が分かればタグ作成アプリを作るのはそんなに難しくありませんので挑戦してみてはいかがでしょうか?
あ、このtouch!ATND x Check!ATNDのアプリはMashup Awardsで何らかの賞を貰えるらしく表彰式に呼ばれています。(交通費自腹...)あざーす。
当日参加される方には懇親会時に各種タグお作りしますし、デモ用ATND立てましたので、参加登録しておいて頂けると実際に挙動を確認できますので、是非参加登録してみて下さい。
ロケタッチRL
位置情報チェックイン系サービスは今後、GPS情報だけでなく、NFCラベルにタッチしてチェックインという形式も一般化するだろう。ロケタッチで作ってみたよ!
ロケタッチRLラベルにはどんな情報が書き込まれているのでしょう?
Bar AndroidのロケタッチRLラベルで確認してみましょう。
こちらもロケタッチRL用のラベルとわかるように、NDEF MIME typeをapplication/vnd.touchrl.loctouchとしたNDEFを書き込んでいますが、Payload部分には何もデータ入れていません。
こちらに関してはタグの固有ID(下図のUID)とロケタッチのスポット情報を紐付けて、ロケタッチRLサーバで管理しています。
まぁタグにロケタッチのスポットIDを格納しても良いのですが、実際にその場所に行って、そこに貼り付けてあるNFCタグの固有IDがわからないとロケタッチRLできない。エアタッチRLできない。という効果が少しはあるかなと思って、そういう実装にしています。
今年は運よく2回東京出張とあわせてBar Androidへ行くことができました。
来年もこっそりこのタグ貼り付けにお邪魔できればいいなーなんて思ってます。
最後に
さぁ、こんな楽しいことできるNFC搭載AndroidスマホとNFCラベルプリンタRL-700S。
既に販売完了してますが、評価機貸出活動中です。コチラから申込み可能ですので、
あなたも何かNFCアプリ作ってみませんか?
それではよいクリスマスをー!
Special thanks to @wof_moriguchi ← Android BEAMを放つガキんちょネタ考案者