使用 CoreLocation CLLocationManager 获取过去的位置

Posted

技术标签:

【中文标题】使用 CoreLocation CLLocationManager 获取过去的位置【英文标题】:Getting past locations with CoreLocation CLLocationManager 【发布时间】:2018-01-03 17:21:50 【问题描述】:

我想编写一个 ios 应用程序,我可以将获取位置的时间推迟到我提出要求。假设我开始跟踪用户位置更新,我想在下次唤醒应用程序时获取用户所在的位置。我认为有一种方法可以从 CoreLocation 获取此信息,但我找不到合适的方法。请帮忙!谢谢!

【问题讨论】:

当用户更改位置时,您必须创建一个数组,在其中附加用户的纬度和经度。通过这种方式,您可以保持用户之前的所有经纬度,非常有效。 不,这意味着它不断地获取位置。我似乎记得有一种方法可以获取给定时间的位置..一旦调用了某个 API..我现​​在找不到它。 好吧,好男人 【参考方案1】:

发现它要求 CoreLocation 进行延迟位置更新。

https://developer.apple.com/documentation/corelocation/cllocationmanager/1620547-allowdeferredlocationupdates

【讨论】:

【参考方案2】:

您应该能够通过调用: locationManager.disallowDeferredLocationUpdates()

它应该取消您应用的位置更新延迟并提供所有待处理的位置

更多信息在Documentation。

【讨论】:

以上是关于使用 CoreLocation CLLocationManager 获取过去的位置的主要内容,如果未能解决你的问题,请参考以下文章

无法通过 Corelocation 找到位置

在 MapKit / CoreLocation 中计算两个纬度/经度之间的距离

如何使用 CoreLocation 获取多个 iBeacon?

使用 CoreLocation 获取最近的位置

CoreLocation 负值

CoreLocation 不能与 Estimotes Beacon 一起使用