【问题标题】:iOS: How to prevent location-related alerts from appearing when in background?iOS:如何防止在后台出现与位置相关的警报?
【发布时间】:2013-03-12 23:20:33
【问题描述】:

我的 iOS 应用在特定操作模式下会在后台使用定位服务。它工作得很好,如果用户在设置/隐私中禁用 LocationServices(全局或仅针对我的应用程序),它会在后台停止处理。

当用户仅为我的应用禁用定位服务时,一切正常。但是,当用户在全球范围内禁用定位服务时,我无法阻止显示“打开定位服务以允许“MyApp”确定您的位置”的标准警报(我的意思是,警报几乎立即显示,而我在设置应用程序中,而不是当我回到我的应用程序将其恢复到前台时)。

我似乎了解其他基于位置的应用程序能够避免这种情况:例如,MotionX-GPS 在后台记录轨迹时不会导致出现任何警报,即使用户在“设置”中禁用了全球定位服务.有人知道如何实现吗?

谢谢,

【问题讨论】:

    标签: iphone ios background alert core-location


    【解决方案1】:

    <CLLocationManagerDelegate>locationManager:didChangeAuthorizationStatus: 看起来很有希望。您可以在您的 CLLocationManager 委托中实现该方法,然后根据新的 CLAuthorizationStatus 值关闭自己。

    【讨论】:

    • 感谢您的回复,哈尔!是的,我正在我的委托中实现该方法,但是当它被调用时,屏幕上已经出现了“打开位置服务...”的警报。
    猜你喜欢
    • 2017-09-16
    • 2017-08-24
    • 2012-07-07
    • 1970-01-01
    • 2011-05-13
    • 2017-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多