Java ME向けLocation APIは、Javaアプリケーションに対してデバイスの現在の物理的な位置情報を提供する、コンパクトで汎用的なJava 2 ME APIです。このAPIは、携帯電話やPDAメーカーによるオプションのサポートが可能で、必要なJavaプラットフォームはCLDC v1.1以上です。
Location API は、Java Community Processの下でJSR 179 として開発され、2003 年 9 月にリリースされ、2006 年 3 月にバージョン 1.0.1 に更新されました。NokiaはこのJSRの主な作成者および保守者です。
OpenLAPIは、Nokia リファレンス実装が存在しないエミュレーター環境やBluetooth経由でGPSデバイスにアクセスできるデバイスで使用するためのLGPL実装です。
特徴
[編集]Location APIは、様々な測位方法に対応できるように設計されています。汎用インターフェースにより、アプリケーション開発者は、デバイス上で利用可能な複数のソースから位置情報を取得できるシステムを実装できます。Location APIは、フェイルオーバー、屋内/屋外の透過性、GPS、携帯電話、その他の測位方法間での速度と精度のトレードオフの選択など、単一の追跡方法に比べて多くの利点があります。このAPIは以下をサポートしています。[ 1 ]
- 現在の位置 - 現在の緯度、経度、高度、方向、携帯電話の速度、およびそれをテキストに変換する方法。
- ランドマークの近接性 - ランドマークのストアを携帯電話のメモリに保存し、現在の場所をランドマークとして追加できます。
- 住所データ - 最寄りのランドマークの郵便番号、電話番号、国、建物名とそのURLなどのテキスト詳細。[ 2 ]
- 位置リスナー - 現在の位置が変更されたときにトリガーされる動的な位置ベースのアプリケーション用。
Location API は次のものをサポートしていません:
- トポロジカル データ - 通常はセル サイト カバレッジの形状から導出されます。
- 位置情報に基づくクエリ - デバイスの現在の位置は計算できます。
デバイスの独立性
[編集]これまで、位置情報サービスの実装はプロバイダごとに異なっていました。このAPIの目的は、様々なデバイスで位置情報を取得するための共通APIを提供することでした。
OpenLAPI はいくつかのバックエンドをサポートしています:
- Bluetooth経由のGPS
- NMEAログファイル(開発用)
- KML ( Keyhole Markup Language ) (開発用)
- 永続的なランドマークストアからのランダムエントリ(開発用)
デバイス固有のラッパーも一緒に提供されます。
サポート
[編集]多くのプロバイダーがこのオプションの JSR を実装しないことを選択しているため、普遍性の目標はまだ達成されておらず、開発者はさまざまなデバイス用にカスタム ビルドを作成する必要があることがよくあります。
Location API は、一部のBlackBerryおよびWindows Mobileデバイス、最近のMotorolaおよびSony Ericssonデバイス、およびすべてのNokia Series 60 3rd Editionデバイス上の Java アプリケーションで使用できます。