GPS衛星の位置情報 GpsStatus.Listener


20140505GpsStatus_Listener

GpsStatus.Listener を使って、GPS衛星の位置情報を取得します。
この種のアプリでは、GPS Test が有名みたいです。

ソースコードは Google Code に置いています。

プログラムの簡単な説明
(1) LocationManager#addGpsStatusListener で GpsStatus.Listener を登録します。
(2) 衛星の情報は、GpsStatus.Listener#onGpsStatusChanged の中で、GpsStatus#getSatellites() を使って取得できます。
戻り値は Iterable の形式です。
(3) GpsSatellite には、下記の値が含まれています
PRN (pseudo-random number) 衛星の番号
Azimuth 衛星の位置を示す方位角
Elevation 衛星の位置を示す仰角
Snr 信号のSN比

留意点が2つあります。
(1) requestLocationUpdates を設定しないと、
onGpsStatusChanged がコールバックされません。
(2) onGpsStatusChanged の中で、LocationManager#getGpsStatus を実行しないと、
GpsStatus が更新されません。

public void onGpsStatusChanged( int event ) {
	Iterable<GpsSatellite> satellites = mGpsStatus.getSatellites();
	… 何か処理する … 
	mGpsStatus = mLocationManager.getGpsStatus( mGpsStatus ); 
}

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です