后台获取模拟器的异常行为

时间:2018-10-28 11:39:09

标签: ios background fetch

运行Xcode 10.0,我实现了后台抓取。

要测试其行为,我有一个变量

let isForeground = UIApplication.shared.applicationState == .active

,由后台提取触发的方法将如下检查其值:

func fetchAll(completionHandler: @escaping (UIBackgroundFetchResult) -> Void) {
        if (!isForeground){
         ...
         }

        completionHandler(.noData)

    }

毫不奇怪,当我选择“调试>模拟背景提取”

isForeground

总是返回

  

false

但是,在我的设备上进行“模拟后台提取”会将应用程序发送到后台,而在Simulator上这样做会将应用程序保持在前台。

后者是错误的行为/错误,还是我应该以某种方式在代码中保留isForeground检查以处理在我的应用程序处于前台时执行后台获取的情况?

0 个答案:

没有答案