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次元の地磁気を検出して方位を取得します。

水平器

 傾きを角度で表示したり、実際の水平器と同じように、傾きに合わせて泡が移動します。

写真1●「電子コンパス」の画面
写真1●「電子コンパス」の画面
写真2●「水平器」の画面
写真2●「水平器」の画面
写真3●「星空」の画面
写真3●「星空」の画面

星空

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

写真4●「ランドマーク」の画面
写真4●「ランドマーク」の画面

ランドマーク

 現在の位置から、主要な建物や場所への方位と最短距離を表示します。

 Androidアプリを代表するポケット羅針盤ですが、なぜこのアプリがiアプリに移植され、かつソースが公開されているのでしょうか。その疑問に関しては、第2回で解説します。

山田雅人(やまだまさと)
テックファーム株式会社 エンジニア
 LAMP環境でのWeb開発や業務システム開発を経てiアプリ、Androidといったモバイル系開発に従事。開発に関わった代表的なアプリとしては「Gガイド番組表リモコンアプリ」(iアプリ)、「ポケット羅針盤」(Android)など。