【问题标题】:RequestLocationUpdates parameter androidRequestLocationUpdates 参数 android
【发布时间】:2013-05-26 04:42:08
【问题描述】:

我对这个参数感到困惑

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

下面是它的执行方式location update listenerif time = 60000 AND distance = 10 然后它将执行或 if time = 60000 OR distance = 10 然后它将执行。 请帮我解决这个困惑。

【问题讨论】:

    标签: android locationmanager


    【解决方案1】:

    根据the docs

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

    所以minTime 优先。进一步说:

    minDistance 参数也可以用来控制位置更新的频率。如果它大于 0,那么位置提供者只会在位置变化至少 minDistance 米,并且至少 minTime 毫秒已经过去时,才会向您的应用程序发送更新

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

    【讨论】:

    • “果冻豆”哈哈! xD
    【解决方案2】:

    根据我的理解应该是OR。阅读this blog 了解更多信息。

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

    【讨论】:

    【解决方案3】:

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

    希望对你有所帮助。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-15
    • 2019-06-29
    • 2021-04-18
    • 2011-07-30
    • 1970-01-01
    相关资源
    最近更新 更多