在Android上调用onLocationChanged()函数

时间:2011-04-21 05:55:26

标签: android

我在Android中使用locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, locationListener);

如果我设置最小时间= 120000且距离= 10000,如果用户在60000毫秒内移动11000米,那么位置更改功能是否会执行?

我想知道调用onLocationChanged()函数的时间。

可能是这样的:

  • 如果时间= 120000且距离= 10000则执行(...)

或:

  • 或时间= 120000或距离= 10000然后执行(...)

2 个答案:

答案 0 :(得分:1)

使用minTime获取更新(这就是为什么他们建议你将其设置在60000ms以上)

  

后台服务应该注意设置足够高的minTime,以便通过始终保持GPS或无线无线电设备,设备不会消耗太多电量。特别是,不推荐低于60000ms的值。

时,也会调用实际的处理程序
  1. 自上次更新后已经过了minTime
  2. LocationProvider已从上次更新移动大于minDistance
  3. minTime存在的原因是背景应用不能吃掉所有电池。

    LocationManager Reference

答案 1 :(得分:0)

首先出现的是比调用的位置更改,如果距离未完成且时间比调整的位置更改或时间不到,但距离已经超过调用。