ios - CLLocationManager 没有为同一位置的不同 iPhone 提供相同的经纬度坐标

标签 ios swift gps cllocation

我正在使用 LocationManager 获取用户位置坐标,如下所示。

  locationManager.requestAlwaysAuthorization()
  locationManager.requestWhenInUseAuthorization()
  locationManager.startUpdatingLocation()
  locationManager.desiredAccuracy = kCLLocationAccuracyBest
  locationManager.delegate = self
  locationManager.distanceFilter = 50

我注意到我在两台设备 iphone5s 和 iphone 6 上运行时得到不同的坐标。当我使用 distanceFromLocation 方法时,它们之间的距离约为 70 -100 米

为什么会这样?

如何获得最佳的用户位置??

最佳答案

kCLLocationAccuracyBest 是您在单个位置的准确性方面所能做的最好的。它将考虑 WIFI、GPS 和 radio 信号,并且通常只有几米远。

不过,如果您正在移动,请将 distanceFilter 设置为较低的值,以确保您更频繁地收到有关新位置的通知。 距离过滤器 50 表示如果用户移动 50 米,您会收到通知,这可以解释您的不准确性。

关于ios - CLLocationManager 没有为同一位置的不同 iPhone 提供相同的经纬度坐标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32455681/

相关文章:

android - GPS 或 ACCELEROMETER 哪个更适合计算赛道?

c - UART 无法接收 GPS NMEA 语句

ios - 动画与 swift

objective-c - 调试是唯一在 Objective C 程序中使用 iVars 有意义的情况吗?

swift - URLComponents queryItems 在突变时丢失编码百分比

ios - 如何使用 iOS Compression Framework 压缩多个文件?

ios - cell.imageView 不显示图像

ios - 如何确定CNContact是收藏夹?

ios - 限制解析查询

iphone - 计算 iPhone 的 GPS 信号质量