CoreLocation CLLocationManagerDelegate在运行中返回缓存/延迟的位置

时间:2018-10-10 09:59:04

标签: ios ipad core-location cllocationmanager

CLLocationManagerDelegate方法locationManager:didUpdateLocations:是否有可能在使用过程中返回缓存的值?

还是有一个已知的CoreLocation错误无法在高速或高海拔环境下正常工作?

我有飞机跟踪应用程序,一些使用较旧iPad设备的用户通知我,该应用程序显示的位置不正确(延迟3-4分钟)。我还实现了文本日志,它显示正确的时间戳,没有延迟。

应用程序在到达新位置后立即呈现视图并记录数据,并且没有排队的可能,因此应该不成问题。

CoreLocations是否可以调节得这么厉害(CPU问题?)以如此大的延迟启动代理?速度可以成为原因吗?如我所说,它是在小型飞机上使用的,所以速度要比汽车大得多。

编辑:为清楚起见,即时通讯会检查实际时间戳,并始终从didUpdateLocations获取数组的最后一个元素

2 个答案:

答案 0 :(得分:1)

没有操作需求就无法获取实时数据,并且收到实时数据的组织不能合法地公开重新分发此数据,除非获得FAA批准的其他组织。运营需求几乎意味着您必须成为航空公司或商业运营商的航班调度员,而不仅仅是对跟踪航班感兴趣。更多细节 检查以下 check here

答案 1 :(得分:0)

经过苹果支持人员的挖掘和帮助(重要帮助),看来原因是ios12中的更改。

必须为.otherNavigation之前的ios12和.airborne的ios12 +设置activityType

以前,此选项似乎没有任何影响...