0

我的应用程序执行后台获取以更新一些数据。在我的初始视图控制器的viewDidLoad方法中,我想检测我的应用程序是否运行以进行后台获取?

我知道使用以下命令检查应用程序的状态非常容易:

if ([UIApplication sharedApplication].applicationState == UIApplicationStateBackground) {
    return; // have a breakpoint here <----
}

但由于某种原因,即使我正常启动应用程序,有时程序也会到达这个断点。这意味着applicationState返回UIApplicationStateBackground。也许应用程序启动发生在后台获取运行或类似的那一刻?

当应用程序在后台模式下运行时,我不想在我的viewDidLoad方法中执行代码,所以我需要ifviewDidLoad.

4

1 回答 1

1

到调用viewDidLoad方法时,它将处于前台(状态为UIApplicationStateInactiveUIApplicationStateActive ),因此 在viewDidLoad中请求UIApplicationStateBackground是没有意义的,有关更多信息,请阅读此链接

在此处输入图像描述

于 2015-09-05T23:55:28.917 回答