特定の間隔で locationManager から位置の更新を要求し、minDistance を無視する方法はありますか? 私はもう試した
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 3600 * 1000, 1, this)
しかし、ログには、場所が数分で更新されることもあれば、30分で更新されることもあります...これを実行して、一定の間隔で場所を更新し、距離を無視することはできますか?
特定の間隔で locationManager から位置の更新を要求し、minDistance を無視する方法はありますか? 私はもう試した
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 3600 * 1000, 1, this)
しかし、ログには、場所が数分で更新されることもあれば、30分で更新されることもあります...これを実行して、一定の間隔で場所を更新し、距離を無視することはできますか?
このスキーマを使用できます。必要なときに毎回呼び出される新しい Runnable を作成します
private final Handler _handler = new Handler();
private static int DATA_INTERVAL = 60 * 1000;
private final Runnable getData = new Runnable()
{
@Override
public void run()
{
getDataFrame();
}
};
private void getDataFrame()
{
requestGPS();
Timer time = new Timer();
time.schedule(new TimerTask() {
@Override
public void run() {
_locationManager.removeUpdates(_connector);
this.cancel();
}
}, 5000, 5000);
_handler.postDelayed(getData, DATA_INTERVAL);
}
private void requestGPS()
{
_locationManager.requestLocationUpdates(
LocationManager.GPS_PROVIDER,
0,
0,
_connector);
}