我正在尝试从GPS检索数据,但它并不那么准确。这是屏幕截图:
与模拟器上的GPS仿真一起使用时效果很好。我想知道如何改善这一点。
这是我尝试的代码:
UserLocation = [[CLLocationManager alloc] init];
#if __IPHONE_OS_VERSION_MIN_REQUIRED >= 60000
[UserLocation setPausesLocationUpdatesAutomatically:NO];
[UserLocation setActivityType:CLActivityTypeFitness];
#endif
UserLocation.delegate = self;
[UserLocation setDistanceFilter:kCLDistanceFilterNone];
[UserLocation setDesiredAccuracy:kCLLocationAccuracyBestForNavigation];
[UserLocation startUpdatingLocation];
然后我每秒检索一次数据,并检查它是否与前一个数据不同。
最佳答案
里克·佩罗特(Ric Perrott)认为GPS数据永远不可能始终保持100%准确是正确的。我建议您将精度设置为kCLLocationAccuracyBest,根据Apple的说法,它是您要尝试执行的正确设置。
为了尝试过滤掉您遇到的一些“跳跃”现象,我建议平均阅读。例如,取X位数的GPS读数(5或10或...),然后取平均值。这样可以消除设备偶尔出现的不正确读数。
我前一段时间写了一个健身步行应用,遇到了类似的问题。平均并不能完全解决问题,但确实可以解决很多问题。
关于iphone - iOS GPS数据问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17812972/