我的应用程序高度基于 CLLocation
时间戳。我发现 CLLocationManager
以 ~1s 的间隔更新位置。这对我的应用程序来说还不够。是否可以配置 CLLocationManager
以更短的时间间隔更新位置,或者我应该寻找其他方法(计时器 + 手动询问位置)?
locationManager.desiredAccuracy = kCLLocationAccuracyBestForNavigation
locationManager.allowsBackgroundLocationUpdates = true
locationManager.distanceFilter = kCLDistanceFilterNone
if #available(iOS 11.0, *) {
locationManager.showsBackgroundLocationIndicator = true
}
locationManager.startUpdatingLocation()
计时器 + requestLocation()
不起作用。
最佳答案
您无法更改更新频率。但你可能不需要那个。您可以使用 CMMotionManager
框架计算手机位置,您可以使用 CLLocationManager
框架获取用户位置。
使用加速度计
计算设备运动。从 didAccelerate 方法
,您可以获得移动的 x
、y
和 z
,因此将其应用于检测到的用户位置您可以计算新的设备位置。
希望这对您有所帮助,祝您好运。
关于ios - 位置更新的时间间隔更短,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49040825/