来自ios app的精确坐标

时间:2016-07-29 09:55:24

标签: ios google-maps-api-3

我正在创建一个跟踪应用程序,而ios应用程序是收集坐标的前端。问题是我的ios应用程序没有给出确切的路径。我正在使用此代码来收集坐标

    locationMgr.desiredAccuracy = kCLLocationAccuracyBestForNavigation
    locationMgr.delegate = self
    //locationMgr.allowDeferredLocationUpdatesUntilTraveled(1.0, timeout:100)
    locationMgr.requestWhenInUseAuthorization()
    locationMgr.pausesLocationUpdatesAutomatically=false
    locationMgr.distanceFilter=1
    locationMgr.startUpdatingLocation()

我正在使用收集到小数点后8位的坐标,例如34.98776555 但是我说的Out out并不是直接的。请帮忙enter image description here

1 个答案:

答案 0 :(得分:0)

GPS定位通常具有1-5米的精度。还有其他因素会进一步降低准确性。

根据以下网站的摘录:How Accurate is the GPS on my Smart Phone?

  

对于任何GPS工作,天线需要清晰的天空视野。智能手机的用户经常会在“城市峡谷”或室内。这是WiFi和蜂窝网络定位变得必要的地方。这两种方法都被智能手机用作室内定位系统。手机将使用混合方法,使用所有三种方法找到您。这两种其他技术并不像A-GPS那样准确,但仍可以找到最适合找到最接近的香草拿铁!

     

一般来说,WiFi定位比蜂窝网络更准确   定位。它使用无线接入点并测量   来自一个或多个网络的接收信号的强度来找到   位置。有趣的是,它不需要您的设备是WiFi   能够工作。

     

蜂窝网络定位根据您的位置对您的位置进行三角测量   附近的手机塔。电话公司有精确的位置   他们的蜂窝塔,当与信号强度结合时,可以   用于估算您的位置。这两种技术都是   取决于来自任一接入点的重叠信号   蜂窝塔。因此,它们在城市环境中更准确。

CLLocationManger有一个名为horizo​​ntalAccuracy的属性,如果它们根据您的要求不够精确,您可以使用它来忽略点。

 public func locationManager(manager: CLLocationManager, didUpdateToLocation newLocation: CLLocation, fromLocation oldLocation: CLLocation){

    print(newLocation.coordinate.latitude)
    print(newLocation.coordinate.longitude)
    print(newLocation.horizontalAccuracy)
}

仅仅1-2米的GPS点将导致该点在路上被绘制。根据我的经验,获得精确定位将是困难的,并且没有什么可以做的。