CLLocation没有显示准​​确的结果

时间:2016-09-30 10:48:43

标签: objective-c swift mkmapview cllocationmanager cllocation

我正在开发一个离线应用程序,我必须显示用户行进的路径,我正在使用MKMapview。每当我从didUpdateLocations方法获取CLLocation坐标时,它显示不满意的结果bcoz如果用户位置在路上然后它显示一些米位置让我们说建筑位置,当我绘制完整的用户旅行路径然后该路径将交叉这么多的建筑物,但用户已经在不在建筑物上的道路上旅行。那么有什么方法可以纠正这个位置坐标(不使用互联网),这样它就能显示出确切的位置。


如果没有办法做到这一点,那么任何其他出租车应用程序如何显示驾驶员当前在路上的位置。我不想为此使用谷歌地图。

1 个答案:

答案 0 :(得分:0)

位置管理器将返回多个位置。您可以添加一些代码来检查返回的位置是否足够好。这是一个例子:

-(void) locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray<CLLocation *> *)locations
{
    if([locations lastObject].horizontalAccuracy <= (some number) )
        [locationManager stopUpdatingLocation];
}