「iBeacon対応アプリの開発を体験してみた!」セミナーレポート
event

「iBeacon対応アプリの開発を体験してみた!」
セミナーレポート

2015.08.27

ent117_img01.jpg

O2O(Online to Offline)の切り札として期待される「iBeacon」。これまではあくまでも「実証実験」的な導入事例が目立ったが、今後いよいよ本格的な普及がはじまりそうな気配だ。iBeaconの活用にはスマートフォン、タブレット等のスマートデバイスが必須であり、アプリ開発にもよりスピードが求められるようになる。そこで今回は、HTML5ハイブリッドアプリ開発プラットフォーム「Monaca」と、mBaaS「ニフティクラウド mobile backend」によるiBeacon対応アプリの開発を体験してみた。
鶴田 展之

■iBeacon導入でできること

7月31日、前回に引き続きニフティ株式会社のハンズオンセミナーに参加させて頂いた。今回のお題は「MonacaとmBaaSでiBeaconを使ったO2Oアプリを体験しよう」である。まず、前半の30分では、iBeaconでできること、iBeaconの仕組みが解説された。読者の皆さんには釈迦に説法かもしれないが、おさらいということでiBeaconについて今一度説明しておこう。

iBeaconは、AppleがiOS7以降に搭載した、近距離通信による屋内測位システムの技術である。「iBeacon」はAppleの登録商標なので、厳密にはiOSの世界のみの話になるが、通信技術の実体的には「BLE(Bluetooth Low Energy)」とほぼ同義であり、Androidやその他のスマートデバイスでも同様の仕組みを構築することは可能だ。つまり、BLEを用いて常時信号を発している発信機にスマートデバイスが接近したときに、「クーポンを発券する」「決済を行う」等なんらかのアクションを起こさせる仕組みが、一般的に「ビーコン」のサービスと呼ばれるものだと理解しておけば良いだろう。ちなみに、「Beacon」とは、英語で「信号灯、灯台、のろし」の意味である。iBeaconの発信機も灯台のように、常に同じ信号を発信し続けるが、「Bluetooth Low Energy」の名の通り、ボタン電池ひとつで数年稼働できるほど低電力なのが大きな利点である。

iBeaconの発信機が発信する値は、「UUID」「Major」「Minor」の3つの値による識別情報と、発信機とデバイスの距離を表す「Proximity」、信号強度を表す「RSSI」のみである。UUIDは「D5A67BA6-EFGH-56A3-A010-XXFY7H1088E5」といった形式のIDで、受信側のスマートデバイスにインストールされたアプリは、常時このUUIDをもつ発信機を探す。iBeacon発信機に近づくと、アプリは発信機を検知するわけだ。

同一のUUIDをもつ発信機を複数設置することもできる。つまり、1つのアプリで複数の発信機を探し続けることも可能だ。その場合、発信機ごとに付与できる「Major」「Minor」の2つの枝番を利用することで、複数ある発信機のどれに接近したのかをアプリ側で判断できる。さらに、どの程度接近したらアクションを起こすかは、「Proximity」の値をもとに制御できる。

たとえば、店舗の入り口に「Minor = 0」、店内の商品Aの近くに「Minor = 1」、商品Bの近くに「Minor = 2」の発信機を設置することを考えてみよう。検知したMinor値が「0」なら、スマートデバイスの画面上に「いらっしゃいませ」と表示する。Minor値が「1」または「2」なら、それぞれの商品の説明を画面上に表示する、といったアクションをアプリに設定できるわけだ。

ent117_img02.jpg

■Monaca x ニフティクラウド mobile backend

iBeaconは、期間限定のキャンペーン的なサービスとの相性がよい。美術館や博物館で展示物の解説を表示する、店舗で商品説明やクーポンの発券に利用する、といった事例では、展示物や商品の入れ替えごとに発信機の位置や数、アクションの内容、UIデザイン等を変更することになる。もちろん、SwiftやJavaでカッチリしたiOS / Androidアプリを開発しても良いのだが、短期間のキャンペーンであれば、より低コストかつ短納期でアプリを開発したいというケースも増えてくるだろう。そこで力を発揮するのが、アシアル株式会社の「Monaca」と、ニフティ株式会社のmBaaS「ニフティクラウド mobile backend」を利用した「クラウド駆動開発」だ。

「Monaca」では、開発環境がまるごとクラウド上に用意されており、アプリのコーディングからビルドまで、すべてWebブラウザ上で実行できる。ハイブリッドアプリ開発のためのフレームワーク「Apache Cordova」やリッチなUIを容易に実装できるCSS / JSフレームワーク「Onsen UI」が内包されており、HTML5、JavaScriptの知識のみでネイティブなスマートフォンアプリが開発できるのも大きな特徴だ。技術的なハードルが下がることで開発者のアサインも容易になるため、ビジネスチャンスを逃さないスピーディーな市場投入が可能になるだろう。

さらに、Monacaは「ニフティクラウド mobile backend」との親和性も高い。例えば、Monaca上で数行のコードを記述するだけで、iBeacon発信機の識別情報、発券するクーポンのデータ、画像リソース等、すべてmBaaS上に展開することが可能だ。つまり、開発から運用、利用分析と改善に至るまで、サービスのライフサイクル全体を自前のインフラ無しに構築できるのである。この手軽さは、iBeaconを利用するサービスの普及にも、必ずプラスに働くはずだ。

■ハンズオン

セミナー後半は、実際にMonacaを利用してiBeacon対応アプリを作成するハンズオンだ。さすがに1時間程の限られた時間内では深いところまで理解するのは難しかったが、講師のディン トゥイ ズオン氏の説明も丁寧で、未経験の筆者でもAndroid、iOSそれぞれのアプリをビルドして動かすことができた。実践的なMonacaの使い方はさらに学習する必要があるが、UIもシンプルにまとまっていて、さほど苦労せずにマスターできそうな印象を受けた。

ent117_img03.jpg

今後、Apple PayやAndroid Payが国内でも普及すれば、iBeaconと決済を組み合わせて「レジ」すら無い店舗ができるかもしれない。コンサート、映画館、交通機関、地方の町おこしなど、iBeaconを活用したら面白い体験を提供できそうなフィールドもたくさんある。ひとつでも大きな成功事例が出れば、街のあちこちにどんどんiBeaconの発信機が置かれていくようになるだろう。たとえばこれまでWebにだけ携わってきた人も、気軽にはじめられるMonaca と mBaaSでスマートフォンアプリの開発に挑戦することで、きっと新しい知見やアイデアが得られるだろう。

原稿:鶴田 展之
qnote代表取締役。オープンソースソフトウェアを用いたシステムインテグレーション及びコンサルティングの傍ら、技術書を中心に多数の著述活動を行う。
なお、オフィスには7匹の猫がいる。

この記事はどうでしたか?

おすすめの記事

キャリアを考える

BACK TO TOP ∧

FOLLOW