问题描述
||
locationManager.requestLocationUpdates(
LocationManager.GPS_PROVIDER,30000,100,new GeoUpdateHandler()
);
定期间隔30秒后,地图会刷新。
假设我在同一位置停留2分钟以上,那么地图将刷新4次以上;我不希望它发生。
谁能建议我将时间设为空?
解决方法
LocationManager.requestLocationUpdates()
上的SDK文档为您提供有关如何利用minTime
和minDistance
参数来调整您所在位置的更新频率的答案:
LocationManager SDK文档
可以使用minTime和minDistance参数控制通知的频率。如果minTime大于0,则LocationManager可能会在两次位置更新之间休息minTime毫秒,以节省电量。如果minDistance大于0,则仅当设备移动minDistance米时,才会广播位置。要尽可能频繁地获取通知,请将两个参数都设置为0。
基本上,由于将minTime设置为30000,因此将获得30秒的更新。您可以考虑将此值设置为0,并将minDistance的值增大为大于100,以获取类似于用户实际移动较大距离时的位置更新。
希望对您有所帮助。
, 最小时间和最小距离值可以防止出现这种情况。
在您的示例代码的情况下,除非用户距上次更新的距离超过100米,否则不应触发该事件。这就是minDistance
属性的含义。
http://developer.android.com/reference/android/location/LocationManager.html