【问题标题】:App background refresh ios9 swift应用后台刷新ios9 swift
【发布时间】:2016-01-04 19:54:36
【问题描述】:

我一直在开发一个应用,它使用 swift 的 iOS 定位服务。在ios9之前一直很好。由于某种原因,我的应用程序在后台停止运行,但仅在物理设备上。模拟器在后台运行良好。我正在通过 NSLog 记录东西,所以我可以告诉它在设备上停止而不是在 sim 上。

是的,我设置了 info.plist。是的,我打开了后台功能。这在 iOS8 中确实有效,但由于某种原因,9 应用程序停止在后台执行。

我在设置中开启了后台刷新,并且我的应用设置为始终请求位置更新,这也在手机的设置中开启。

对于为什么会发生这种情况,我有点茫然,所以我猜我可能需要对 xcode7 和/或 ios9 进行一些代码更改。

非常感谢任何帮助!!!

罗伯

【问题讨论】:

    标签: ios swift background ios9


    【解决方案1】:

    看来苹果在 iOS9 中需要一个新东西:

    allowsBackgroundLocationUpdates = true
    

    这是给位置经理的。

    我的最终代码如下所示:

        // this is needed for ios9 to get the location even when it's backgrounded
        if #available(iOS 9.0, *) {
            self.locationManager.allowsBackgroundLocationUpdates = true
        } else {
            // Fallback on earlier versions
        }
    

    【讨论】:

    • 干杯兄弟,你救了我
    • 有点笨,如果你不知道这一点,并且不更新你的应用程序,ios 9 用户将无法使用此功能!
    • 是的,这非常令人沮丧。让我疯了一个星期!!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多