|
NTT DOCOMO and Hitachi Kokusai Electric Know-how & Confidential | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectcom.docomo_um.module.location.LocationProvider
public abstract class LocationProvider
現在地を測位する機能にアクセスする手段を提供するクラスです。
現在位置取得を行うことができます。
また、緊急通報時の位置提供が開始されたことをアプリケーションへ通知させることもできます。
測位を行う際の測地系は世界測地系(WGS84)を使用します。
測位方式には以下があります。
| 測位方式 | 説明 |
|---|---|
標準測位 |
アシストデータを利用する測位方式 |
自律測位 |
ネットワークからアシストデータを取得しないで測位を行う測位方式 アシストデータの1つであるリファレンスポジションを測位結果として返すことはありません。 |
測位方式自動選択による測位 |
以下のいずれかの測位結果を返す測位方式
本測位方式において、標準測位でアシストデータ取得処理に失敗してから自律測位をおこなう場合、 測位結果を返すまでに数分を要する点を留意してください。 |
LocationProviderインスタンス生成時に指定した測位方式は、現在位置取得の場合のみ適用されます。 他のGPS測位機能は、指定した測位方式によらず、標準測位となります。
GPS測位機能と測位方式の対応関係は以下になります。
| 測位機能 | 測位方式 |
|---|---|
現在位置取得 |
標準測位 / 自律測位 / 測位方式自動選択による測位 |
緊急通報時の位置提供 |
標準測位 |
GPS測位機能は、音声通話やパケット通信と競合することなく測位することができます。 ただし、音声規制中は以下の機能が制限されます。
緊急通報時に緊急通報受理機関から要請があった場合、緊急通報時の位置提供が行われます。
ただし測位状態が現在位置取得中の場合は、緊急通報受理機関からの要請を受けても、
先発の測位を優先するため、緊急通報時の位置提供を行うことが出来ません。
| フィールドの概要 | |
|---|---|
static int |
METHOD_AUTO
測位方式の一つで、自動的に測位方式を選択することを表します。 |
static int |
METHOD_STANDALONE
測位方式の一つで、 自律測位を表します。 |
static int |
METHOD_STANDARD
測位方式の一つで、 標準測位を表します。 |
static int |
MODE_QUALITY_PRIORITY
測位モードの一つで、 品質重視モードで測位を行うことを表します。 |
static int |
MODE_STANDARD
測位モードの一つで、 標準モードで測位を行うことを表します。 |
static int |
STATUS_EMERGENCY
測位状態の一つで、緊急通報時の位置提供中を表します。 |
static int |
STATUS_IDLE
測位状態の一つで、現在位置取得、緊急通報時の位置提供を行っていない状態を表します。 |
static int |
STATUS_MEASUREMENT
測位状態の一つで、現在位置取得中を表します。 |
| メソッドの概要 | |
|---|---|
static int[] |
getAvailableLocationMethod()
サポートされている測位方式を取得します。 |
int[] |
getAvailableMeasurementMode()
設定可能な測位モードを取得します。 |
Location |
getLocation()
現在位置取得を行います。 |
int |
getMeasurementMode()
このインスタンスが測位時に使用する測位モードを取得します。 |
int |
getStatus()
GPSの測位状態を取得します。 |
void |
interrupt()
測位を中断させます。 |
void |
setMeasurementMode(int mode)
測位モードを設定します。 |
void |
setProviderLocationStartedListener(ProviderLocationListener listener)
リスナを登録します。 |
| クラス java.lang.Object から継承されたメソッド |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait |
| フィールドの詳細 |
|---|
public static final int METHOD_STANDALONE
getAvailableLocationMethod(),
ModuleManager.getLocationProvider(int),
定数フィールド値public static final int METHOD_STANDARD
getAvailableLocationMethod(),
ModuleManager.getLocationProvider(int),
定数フィールド値public static final int METHOD_AUTO
getAvailableLocationMethod(),
ModuleManager.getLocationProvider(int),
定数フィールド値public static final int MODE_QUALITY_PRIORITY
setMeasurementMode(int),
定数フィールド値public static final int MODE_STANDARD
setMeasurementMode(int),
定数フィールド値public static final int STATUS_IDLE
getStatus(),
定数フィールド値public static final int STATUS_MEASUREMENT
getLocation() メソッド実行中を指します。
getStatus(),
getLocation(),
定数フィールド値public static final int STATUS_EMERGENCY
getStatus(),
定数フィールド値| メソッドの詳細 |
|---|
public static int[] getAvailableLocationMethod()
サポートされている測位方式を取得します。 サポートされている測位方式のリストが返されます。
GPSが搭載されていない場合は、NULLが返却されます。
METHOD_STANDALONE,
METHOD_STANDARD,
METHOD_AUTOpublic int[] getAvailableMeasurementMode()
このメソッドによって取得した配列の各要素の値は、
setMeasurementMode(int) の引数に設定することにより、
その値が表す測位モードで アプリケーションからの測位を行えることが保証されています。
戻り値を modes とすると、 modes[0] が MODE_STANDARD であることは保証されています。
測位方式がMETHOD_STANDALONEであるとき、戻り値にMODE_QUALITY_PRIORITYが含まれることはありません。
通信モジュールの実装によっては他の測位モードをサポートしていない場合があります。
その場合、 未サポートの測位モードに対応する MODE_ から始まる定数は、 配列 modes 中には含まれていません。
MODE_QUALITY_PRIORITY,
MODE_STANDARDpublic int getMeasurementMode()
MODE_QUALITY_PRIORITY,
MODE_STANDARDpublic void setMeasurementMode(int mode)
測位モードには、 getAvailableMeasurementMode() によって返される配列の各要素の値を指定することができます。
それ以外の値を指定した場合は、 不正な値が指定されたとして例外が発生します。
指定を行わなかった場合の測位モードは、デフォルト値の MODE_STANDARD です。
mode - 測位モードを表す定数値を指定します。
java.lang.IllegalArgumentException - 不正なmodeを指定した場合に発生します。MODE_QUALITY_PRIORITY,
MODE_STANDARD
public void interrupt()
throws LocationException
このインスタンスにて現在位置取得中(STATUS_MEASUREMENT状態)に本メソッドをコールすると、測位が中断されます。
STATUS_MEASUREMENT以外の状態で本メソッドがコールされた場合、本メソッドは何もしません。
LocationException - 測位の中断に失敗した場合に発生します。STATUS_MEASUREMENT
public Location getLocation()
throws LocationException,
RegulationException,
ExternalStatusException
現在位置取得を行います。
java.lang.IllegalStateException - 測位状態が 現在位置取得中(STATUS_MEASUREMENT)、緊急通報時の位置提供中(STATUS_EMERGENCY)の場合に発生します。
LocationException - 測位に失敗、及びタイムアウトが生じた場合に発生します。
RegulationException - 規制による通信失敗の場合に発生します。
ExternalStatusException - UIMが挿入されていない場合など、現在位置取得に失敗した場合に発生します。STATUS_MEASUREMENT,
STATUS_EMERGENCY
public int getStatus()
throws LocationException
LocationException - 内部エラーにより処理が中断した場合に発生します。STATUS_IDLE,
STATUS_MEASUREMENT,
STATUS_EMERGENCYpublic void setProviderLocationStartedListener(ProviderLocationListener listener)
現在位置提供を開始したときに呼ばれるリスナを登録します。
このインスタンスに登録できるリスナは1つだけです。
このメソッドを複数回呼出した場合、最後に登録したリスナだけが有効です。
null を指定すると、リスナの登録を削除します。
listener - 登録するリスナを指定します。
|
Copyright © 2013 NTT DOCOMO, INC. and Hitachi Kokusai Electric Inc. All Rights Reserved. | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||