我正在尝试将一些位置更新收集到Android地图应用程序中的arraylist中。我想将收集的每分钟位置更新保存到本地服务器中。我怎样才能做到这一点。 Android中是否有功能可以执行此操作?
答案 0 :(得分:0)
使用Service
,就像没有任何用户界面的活动一样。
让Service
在每分钟后运行,并以纬度和经度的形式记下位置更新。
然后使用Non-UI
主题将位置数据存储在数据库中,对于例如: SQLite
服务:
http://developer.android.com/guide/components/services.html
创建简单线程:
Thread t = new Thread(new Runnable(){
public void run(){
// Here is the code that will do your job every minute.
// Please use a while loop with a loop control factor,
// and sleep mechanism to let your thread sleep for a minute.
// for sleep, instead of using Thread.sleep(timeout) better use
//TimeUnit.SECONDS.sleep(timeout);
}
});
t.start();
答案 1 :(得分:0)
我们使用 NETWORK_PROVIDER 或 GPS_PROVIDER 来评分当前位置。
在这两种情况下,都会列出一个方法,以便为应用程序频繁更新时间戳和基于距离的位置。
位置更改将由在requestLocationUpdates()注册的LocationListener调用的 OnLocationChange()检测到。
public void requestLocationUpdates (String provider, long minTime, float minDistance, LocationListener listener)
如果minDistance大于0,则仅当设备移动minDistance米时才会广播位置。要尽可能频繁地获取通知,请将两个参数都设置为0。