2010年12月6日、NTTドコモはGPSなどを利用するiアプリである「ポケット羅針盤」のソースコードを公開しました。第1回では、ポケット羅針盤とはいったいどのようなアプリケーションなのかを実際の画面写真から説明します。
ドコモマーケット(iモード)のオープンに先立って、iアプリ開発を支援するライブラリやサンプルコードなどがNTTドコモから公開され始めました。公開されたサンプルコードは、新たに一般の個人開発者に開放されたDX機能を紹介する目的で作成されています。そのため、これらを実際に動かすことで「何が、どの程度できるのか」ということが体験できます。
Android版ポケット羅針盤をiアプリへ移植
公開されたサンプルコードの中に、「ポケット羅針盤」というアプリのコードがあります。実は、このアプリは日本で初めて発売されたAndroid端末である台湾HTCの「HT-03A」や、ソニー・エリクソン・モバイルコミュニケーションズの「Xperia」にプリインストールされていたものです。つまり今回公開されたポケット羅針盤は、Androidからiアプリへ移植されたものになります。
ポケット羅針盤は、一般のユーザーにAndroidの高性能さをアピールする目的で作成されています。Androidの大きな特徴であるGPSや方位、加速度、傾きといった各種センサーをフルに生かしたアプリとなっています。
ポケット羅針盤には、これらのセンサーを生かした機能が四つあります。(1)電子コンパス、(2)水平器、(3)星空、(4)ランドマークです。例えば「星空」や「ランドマーク」では、方位センサーとGPSを利用しており、「水平器」では傾きセンサーを利用しています。「電子コンパス」でも方位センサーを利用しています。
Android搭載端末やiPhoneといったスマートフォンが出るまで、日本国内の携帯端末では、加速度センサーや方位センサーはあまり注目されていませんでした。デバイスとして搭載している機種は一部あったものの、iアプリでもオプションAPIという位置づけになっており、一部の機種でしか扱えないものでした。
それが今回のドコモマーケット(iモード)のオープンにともなうDX機能の個人開発者への開放によって、iアプリにも身近なものにになります。まずこの連載の第1回では、各種センサーやGPS機能を生かしたポケット羅針盤がどんなものなのかを紹介します。
電子コンパス
その名の通り、電子コンパスの機能を備えています。電子コンパスは3次元の地磁気を検出して方位を取得します。
水平器
傾きを角度で表示したり、実際の水平器と同じように、傾きに合わせて泡が移動します。



星空
端末を空にかざすだけで、利用者の現在地から実際に見ることのできる星空を表示します。向いている方向の検出には方位センサーを利用しています。現在地の確認にはGPSを利用しています。

ランドマーク
現在の位置から、主要な建物や場所への方位と最短距離を表示します。
Androidアプリを代表するポケット羅針盤ですが、なぜこのアプリがiアプリに移植され、かつソースが公開されているのでしょうか。その疑問に関しては、第2回で解説します。
テックファーム株式会社 エンジニア