ios - 即使我调用 stopUpdatingLocation,位置管理器图标仍然显示

标签 ios ios6 core-location cllocationmanager

即使我在我的位置管理器上调用了 stopUpdatingLocation,位置管理器图标仍然位于我的 iPhone 的右上角。为什么还没有停止?

最佳答案

即使在调用 stopUpdatingLocation 之后,您手机上的位置箭头可能仍然亮起的原因有多种。

首先,您手机上的另一个应用程序当前可能正在使用您的位置。

另一种可能是您使用 startMonitoringSignificantLocationChanges 方法启用了重要的位置更改监控,但忘记使用 stopMonitoringSignificantLocationChanges 方法将其关闭。监控重大位置变化的应用程序将在状态栏中显示一个实心箭头,就像使用标准位置更新的应用程序一样。

当然,您也可能出于某种原因错误地调用了 stopUpdatingLocation,而您实际上仍在从位置管理器获取位置更新。要检查是否发生这种情况,请在调用 stopUpdatingLocation 后等待几分钟,然后转到“设置”>“隐私”>“定位服务”并找到您的应用。如果您的应用旁边有一个实心紫色箭头,那么您的应用当前确实正在使用定位服务,并且在调用 stopUpdatingLocation 时很可能出现了问题。但是,如果有一个实心的灰色箭头,这仅表示您的应用最近使用了位置服务,并且您很可能确实正确地停止了获取更新。检查您是否正确关闭位置更新的另一种方法是调用您的 CLLocationManagerlocation 属性并检查其 timestamp 属性以确保这不是最近的。如果时间戳大于您调用 stopUpdatingLocation 的时间戳,那么您就知道出了点问题。

关于ios - 即使我调用 stopUpdatingLocation,位置管理器图标仍然显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18295458/

相关文章:

ios - Paypal MECL iOS - 显示 "Pay with a Card"直接查看

ios - 加密核心数据的属性是个好主意吗?

iphone - 如何检查 iOS 设备是否设置为 "do not disturb"?

c - 打开 bundle 中的文件时,fgetpos 在 iOS 6.1 模拟器中失败

iOS 11 中的位置权限

iphone - 文件中缺少所需的架构 i386

ios - UIView 的宽度和高度为零,即使它是可见的

objective-c - 如何在可见 map 矩形中选择特定类的注释

ios - 使用 leftView 时在 UITextField 中移动文本

ios - 如何捕获 func LocationManager 的 GPS 数据?