即使我调用stopUpdatingLocation
了我的位置管理器,位置管理器图标仍然在我的 iPhone 的右上角。怎么还没停?
2 回答
有几个原因导致您的手机上的位置箭头即使在拨打电话后仍然亮着stopUpdatingLocation
。
一方面,您手机上的另一个应用程序当前可能正在使用您的位置。
另一种可能性是您使用该方法启用了显着的位置变化监控,startMonitoringSignificantLocationChanges
但忘记使用该方法将其关闭stopMonitoringSignificantLocationChanges
。监视重大位置变化的应用程序将在状态栏中显示一个实心箭头,就像使用标准位置更新的应用程序一样。
当然,您也有可能由于某种原因打错电话stopUpdatingLocation
,而您实际上仍在从位置管理器获取位置更新。要检查是否发生这种情况,请在致电后等待几分钟,stopUpdatingLocation
然后转到“设置”>“隐私”>“位置服务”并找到您的应用。如果您的应用旁边有一个实心紫色箭头,那么您的应用当前确实在使用位置服务,并且很可能在调用时出现了问题stopUpdatingLocation
。但是,如果有一个实心灰色箭头,这仅表示您的应用最近使用了位置服务,并且您可能确实正确地停止了获取更新。检查您是否正确关闭位置更新的另一种方法是调用您CLLocationManager
的location
属性并检查其timestamp
财产,以确保它不是最近的。如果时间戳大于您调用的时间戳,stopUpdatingLocation
那么您就知道出了点问题。
你在顶部看到的图标不是locationManager,是设备的定位服务。如果您在设置中停用不再出现。