ホームページ >Java >&#&チュートリアル >NETWORK プロバイダーを使用すると、Android の位置情報の更新が古くなってしまうのはなぜですか?
Android で現在位置を取得する方法
問題を理解する
問題が発生していますAndroid の NETWORK 位置プロバイダーを使用して現在の位置座標を取得します。複数の既存のクラスを実装しているにもかかわらず、常に古い座標を受け取ります。
実装の詳細
位置の更新を処理する LocationListener を定義します:
private final LocationListener mLocationListener = new LocationListener() { @Override public void onLocationChanged(final Location location) { // Custom code for handling location changes } };
を入手しますLocationManager と位置更新のリクエスト:
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mLocationManager = (LocationManager) getSystemService(LOCATION_SERVICE); mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, LOCATION_REFRESH_TIME, LOCATION_REFRESH_DISTANCE, mLocationListener); }
位置更新時間と距離の定数:
int LOCATION_REFRESH_TIME = 15000; // 15 seconds to update int LOCATION_REFRESH_DISTANCE = 500; // 500 meters to update
ネットワークベースの場合位置情報:
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
GPS ベースの位置情報の場合:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
以上がNETWORK プロバイダーを使用すると、Android の位置情報の更新が古くなってしまうのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。