首页 > 解决方案 > startMonitoringSignificantLocationChanges 未立即启动

问题描述

我正在开发一个导航应用程序,一切都在终止、背景和前景状态下工作。但在终止状态的一种情况下, startMonitoringSignificantLocationChanges 不会自行处理。

问题是

代码是直的

    significantLocationManager = CLLocationManager()
    significantLocationManager?.allowsBackgroundLocationUpdates = true
    significantLocationManager?.pausesLocationUpdatesAutomatically = false
    significantLocationManager?.requestAlwaysAuthorization()

并在用户需要时调用跟踪

significantLocationManager?.startMonitoringSignificantLocationChanges()

休息我已经处理了应用程序委托中的传入位置事件以保存在数据库中。

所以问题是我应该如何处理绘制直线的这种情况?

标签: iosswiftlocationcllocationmanager

解决方案


苹果文档

一旦设备从之前的通知移动 500 米或更远,应用程序就会收到通知。它不应期望通知的频率超过每五分钟一次。如果设备能够从网络检索数据,则位置管理器更有可能及时传递通知。

如果您需要尽快接收位置更新,我建议您使用 startUpdatingLocation()desired distanceFilterof CLLocationManager


推荐阅读