获得设备移动的速度

时间:2009-11-11 05:00:41

标签: iphone cllocation

我正在使用CLLocation.speed来提高设备的移动速度,但每次都是0。我试过了

speed = ([newlocation getDistanceFrom:oldlocation]/[newlocation.timeStamp timeIntervalSinceDate:oldlocation.timeStamp])

问题是它偶尔提供错误的速度。

1 个答案:

答案 0 :(得分:1)

有一些配置可以帮助你:

  1. CLLocationManager除非用户移动到当前位置的圆圈外,否则不会向您发送更新。您可以控制圆的半径(使其更小),以便获得更精细的更新。请参阅distanceFilter

  2. CLLocationManager具有精确度控制,您希望将其设置为最佳级别。请参阅desiredAccuracy

  3. 您最好的选择就是不断计算这个“速度”并使用弱的低通滤波器来平滑结果。

    有关详情,请参阅此问题:iPhone CoreLocation: How to get the most accurate speed