非常奇怪的错误 - 我可以像这样使用位置更新:
LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 2000, 1, new LocationListener() {
//On location changed code here
}
但不是这样的:
全局变量:
LocationManager lManager;
LocationListener lListener;
在我的代码中:
lManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
lListener = new LocationListener() {
//On location changed code goes here...
}
lManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 2000, 1, lListener);
为什么lListener / lManager是全局的?一,他们在其他地方的代码中用于其他位置轮询。第二,我需要全局,所以我可以在暂停时正确退出locationservice。
有人有什么想法吗?我很难过!
编辑:还有一件事:没有错误,但现在应用程序只获取一次位置,而不是每2秒轮询一次!