gaggitのブログ

コーディング、ガジェット、TIPS関連、FX

LocationSettingsRequestについて

公式サイトからSettingsApiのリファレンスを参照して、LocationSettingRequest.Builderの部分をコーディングをしています。addRequestの引数にmLocationRequestHighAccuracyとmLocationRequestBalancedPowerAccuracyがありますが、このメンバーの記述が記載されていないので、自分で補完する必要があります。LocationRequestのリンクを参照すると、setPriorityとsetIntervalを使用して、優先順位とインターバルを設定します。インターバルは、単位がミリ秒のlong型です。高精細位置情報のインターバルは5秒間で、バランス型は60分間で、最も早いインターバル設定(setFastestInterval)で1分です。

なので、Builderでリクエストを生成する前に以下、7行を追加します。

 

LocationRequest

mLocationRequestHighAccuracy = LocationRequest.create();
mLocationRequestHighAccuracy.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
mLocationRequestHighAccuracy.setInterval(5000L);
LocationRequest
mLocationRequestBalancedPowerAccuracy = LocationRequest.create();
mLocationRequestBalancedPowerAccuracy.setPriority(
LocationRequest.PRIORITY_BALANCED_POWER_ACCURACY);
mLocationRequestBalancedPowerAccuracy.setInterval(3600000L);
mLocationRequestBalancedPowerAccuracy.setFastestInterval(60000L);
 
LocationSettingsRequest.Builder builder = new LocationSettingsRequest.Builder()
  .addLocationRequest(mLocationRequestHighAccuracy)
  .addLocationRequest(mLocationRequestBalancedPowerAccuracy);

参照サイト:

SettingsApi  |  Google APIs for Android  |  Google Developers

LocationRequest  |  Google APIs for Android  |  Google Developers