我正在开发一个跟踪应用,需要在地图上显示跟踪路径。当我开始更新位置并且在安装后没有移动设备时,locationManagar会报告错误的位置更新,
我正根据报告的位置点绘制路线
此外,当用户在直路上高速驾驶车辆时,也显示出这样的故障,
如何忽略这些错误的位置更新。
您可以下载应用here并自行测试
答案 0 :(得分:0)
查看水平精度检查以确保您拥有准确的位置。例如,低于10米或低于零:
// test that the horizontal accuracy does not indicate an invalid measurement
if (lastLocation.horizontalAccuracy < 0)
return;
并确保您有一个新位置,因为它将返回最后一个默认位置:
// test the age of the location measurement to determine if the measurement is cached
// in most cases you will not want to rely on cached measurements
NSTimeInterval locationAge = -[lastLocation.timestamp timeIntervalSinceNow];
if (locationAge > 5.0)
return;
还要确保在CLLocationManager上设置正确的desiredAccuracy。例如:
_manager.desiredAccuracy = kCLLocationAccuracyBestForNavigation;