我使用计时器调度方法每 5 分钟向数据库发送一次位置信息。
这是代码:
public void onStart(Intent intent, int startId)
{
this.timer.schedule(new Send(), new Date(), TEN_SECONDS*6*5); //ten_seconds = 10000
}
class Send extends TimerTask
{
public void run()
{
String address = LocationService.this.address;
new SendLocation(LocationService.this.id,address); // a thread that sends the info to the db
LocationService.this.gpsLocation = null;
LocationService.this.networkLocation = null;
}
}
但是为什么我的数据库有 7/6 分钟差异的位置?sendLocation 检查我要发送到数据库的位置是否与最后一个相同,如果为真则忽略该位置,否则发送它。
这意味着我的数据库中每个位置之间的差异应该是 5 分钟的跳跃。