有没有办法每隔x分钟获取一次该位置,即使没有变化?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有没有办法每隔x分钟获取一次该位置,即使没有变化?相关的知识,希望对你有一定的参考价值。
我正在使用android Studio。我使用locationManager.requestLocationUpdates(...)来获取位置。
我想做这样的事情:
//print location every 5 minutes
12:10am lat=10.23652 long=21.25441
12:15am lat=10.23652 long=21.25441
12:20am lat=15.21456 long=58.21452
12:25am lat=12.24752 long=27.24587
12:30am lat=12.24752 long=27.24587
12:35am lat=12.24752 long=27.24587
...
我不知道位置是否改变了,我只想每x分钟打印一次。
答案
解决方案可以包含具有postDelayed的Handler。删除任何回调很重要!
尝试这样的事情:
private boolean continueLoop = true;
private Handler myHandler = new Handler();
private void startLocationManager() {
try{
Log.d(TAG, "startLocationManager - Started");
// here the delay (in this example it is effectively the interval)
int minutes = 5;
int delay = 1000 * 60 * minutes;
myHandler.postDelayed(mAutoLocationManager, delay);
}
catch(Exception ex){
Log.e(TAG, ex.getMessage());
}
}
private Runnable mAutoLocationManager = new Runnable() {
public void run() {
if(continueLoop){
// preform the scan for the location coordinates
startYourLocationCoordinates();
//re-trigger the call to start a new interval
startLocationManager();
{
}
};
// Make certain that you remove the callback when you leave the activity -- maybe in onPause()
private void stopAutoDownloadManager(){
try{
myHandler.removeCallbacks(mAutoLocationManager);
}
catch(Exception ex){
Log.e(TAG, ex.getMessage());
}
}
以上是关于有没有办法每隔x分钟获取一次该位置,即使没有变化?的主要内容,如果未能解决你的问题,请参考以下文章
有没有办法从 python 脚本中获取不断变化的数据,并在 Vue 组件中显示和更新?