【发布时间】:2012-09-26 08:34:41
【问题描述】:
我想每 10 秒向远程服务器发送一些数据和坐标。我想,最好的匹配是
public void onCreate( Bundle savedInstanceState ) {
//snip
locationManager.requestLocationUpdates( LocationManager.GPS_PROVIDER, 10000, 0, new SendingLocationListener() );
}
在监听器中我有以下代码:
public void onLocationChanged( Location location ) {
if( null == location ) return;
TrackerNotifierTask task = new TrackerNotifierTask();
task.execute( location );
}
TrackerNotifierTask 在它的doInBackground() 方法中使用httpclient,所以它非常简单。
现在,如果我启动活动,我可以看到onLocationChanged() 被执行并且数据成功到达远程服务器。但只有一次!无论我以后做什么,改变坐标或任何事情,任务都不会被调用。
这是在android中实现这种东西的正确方法还是我应该求助于background-service?
【问题讨论】:
标签: android geolocation android-asynctask locationlistener