如何解决我不希望发生MapView刷新事件,每隔固定间隔触发一次
||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
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。