DATE : 2006/11/25 (Sat)
いま携帯電話上の GPS と電子コンパスを使った企画を、BREW プラットフォーム上で進めています。
今日、ふと Wikipedia の DoJa プロファイル の項目を見ていると、次のような記述があることに気付きました。
DoJa 5.0では基本APIにメモリ管理、GPS制御、オプションAPIにハードウェアを使用するOpen GL ES 1.0相当の3D描画、Bluetooh制御のAPIが追加された。
(,,゚Д゚)
( ゚д゚)ハッ!
しばらく JavaME の情報からは遠ざかっていたので、いつ公開されたのかを確かめるために「iアプリコンテンツの概要」のページへと急ぎました。
どうも、10月12日に発表された FOMA903i用のプロファイルとして同日に公開されたようです。
早速 API リファレンスを覗いてみると、com.nttdocomo.device.location.LocationProvider で現在地を取得できるようです。
ただ、BREW と比べると、設定内容の少なさが気になります。BREW では、携帯電話内の GPS 受信機のみでも測位できるようにするのか、それとも基地局から補正情報を常に受け取るようにするのかといった設定に加え、求める精度も数段階に設定できます。このあたりの細かい設定が、DoJa-5.0 プロファイルでは少々ぼかされているような印象を受けました。
(;^ω^)もっとも、使い勝手は BREW よりも DoJa の方が良さそうですが
ただ、これは位置情報を GPS 以外でも取得できるようにするためかもしれません。事実、取得方法を指定するメソッドがありました。Wi-Fi で現在地を測位する PlaceEngine を視野に入れているのかもしれません。
また、電子コンパスもサポートされていました。com.nttdocomo.device.location.Compass を使うと、電子コンパスから携帯電話の上部が向いている方位を取得できるようです。正直期待はしていなかったので、うれしい誤算でした。
それにしても、企画を始めた当初の DoJa プロファイルでは位置情報関連の API が使えなかったのですが、ここに来て一気にサポートされるようになりました。
ちなみに、ソフトバンクも MEXA プロファイルに GPS がありますし、姿勢情報から方位も取得できるようになっています。ただし、au のオープンアプリプレイヤーは、搭載されるプロファイルが MIDP のみなので位置情報も方位も取得できません。
(;´∀`)もっとも、API があっても対応するハードウェアがないと意味がありませんけどね
(;´Д`)……と、ここまでいろいろと調べてみたのですが、改めて DoJa-5.0 プロファイルの com.nttdocomo.device.location.LocationProvider のドキュメントを眺めていると、次のような記述が見つかりました。
指定された測位方式で測位を行う、 測位機能のインスタンスを生成して返します。
(中略)
パーミッションとして位置情報APIの利用が許可されているトラステッドiアプリのみ、 このメソッドを呼び出すことができます。
(中略、強調は著者)
(´・ω・`)
(;´Д`)NTTドコモに登録された業者でないと、位置情報 API は使用できないようです