4

我对这个参数感到困惑

locationManager.requestLocationUpdates(provider, 
                60000,
                10,
                listener);

所以这里是它的执行方式location update listenerif time = 60000 AND distance = 10然后它将执行或 if time = 60000 OR distance = 10然后将执行。请帮助我摆脱这种困惑。

4

3 回答 3

7

根据文档

位置更新之间的经过时间永远不会少于minTime

所以minTime优先。进一步说:

minDistance 参数还可用于控制位置更新的频率。如果它大于 0,那么位置提供程序将仅在位置已更改至少 minDistance 米并且至少 minTime 毫秒已过去时向您的应用程序发送更新

所以应该是if(time >= minTime AND dist >= minDistance),意思是如果太早就不会检查距离。但是在 JellyBeans 之前不要太认真地对待这些参数。

于 2013-05-25T20:42:08.837 回答
-1

按照我的理解应该是OR。阅读此博客了解更多信息。

请记住,GPS 本身的精度为 10 到 50 米。

于 2011-06-10T05:23:26.107 回答
-1

在此方法中,第二个参数 60000 以毫秒为单位显示更新位置的时间,因此 60000 表示 60 秒 (60*1000)。'OR' 第三个参数是距离(更新位置的最小距离间隔)在你的情况下它是 10 米

我希望这是有帮助的。

于 2011-06-10T05:34:51.630 回答