使用kCLLocationAccuracyBestForNavigation时,CLLocationManager的速度和路线错误

时间:2013-08-28 09:43:28

标签: ios gps core-location

有时我会在didUpdateToLocation中获得速度和课程的奇怪值。这可能是在我将desiredAccuracy设置从kCLLocationAccuracyBest更改为kCLLocationAccuracyBestForNavigation时开始的。球场可以漂移到90度。另一个问题是,如果设备完全静止(即使船/车正在移动),速度有时会设置为0。我不知道问题是否相关。

我可以在ipad2和ipad3的几个设备上确认这种行为。

有没有人经历过类似的事情?

/马丁

1 个答案:

答案 0 :(得分:0)

我刚尝试使用iOS 7.02的新iPhone进行了实验。我无法复制你的问题。具体来说,我使用的是委托方法didUpdateLocations,

- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations

因为自iOS6以来已弃用didUpdateToLocation。我不知道locations数组与不推荐使用的方法中返回的newLocation有什么不同。

我尝试了行走和驾驶,并取得了良好的效果。是的,球场会反弹,并不像指南针那样立即准确,但我没有看到它在移动时变化多达90度,也没有看到速度为零。

如果您的GPS或甚至WiFi信号很差,或者您正在移动,那么您可以看到这种行为。也许这不是你希望的那种答案,但由于已经过了一个多月,我认为即使它没有证实你的经验,我也会将我的经验与之相关。

如果有帮助,我可以发布一个代码段。