如何在iOS上获得最准确的用户速度

时间:2017-08-28 08:00:22

标签: ios swift

我是iOS开发的新手。可以请任何人告诉我在iOS中获得用户速度的最准确方法。 CLLocation速度似乎不正确。

这是我获得速度的代码

func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
    var speed: CLLocationSpeed = CLLocationSpeed()
    speed = (locationManager.location?.speed)!
    print("speed - ", speed * 3.6)

1 个答案:

答案 0 :(得分:0)

使用“CLLocation”计算的移动速度将不准确,因为您需要连续更新位置,这会占用大量资源。因此,CLLocation会根据间隔更新位置。

如果出于某种原因,您希望持续更新速度,则需要查看AccelerometerGyroscope。通过使用两者的值和一些数据操作,您可以获得更合理的当前速度值。

注意 请记住,这样做会对设备的资源产生影响,并不是最好的方法。