如何通过应用程序检查是否有任何UIBackgroundTask处于活动状态?

时间:2013-09-27 12:39:09

标签: ios objective-c background-process multitasking suspend

我在应用中的许多地方使用beginBackgroundTaskWithExpirationHandler,只要有必要完成任务,我就会在任务结束时endBackgroundTask。 我的代码中有一些关键部分,我想知道应用程序当前是否可以暂停(如果后台)。

因此,当我endBackgroundTask时,我想检查整个应用中的任何UIBackgroundTaskIdentifier是否 UIBackgroundTaskInvalid,以便我可以通知所有应用程序不再受任何beginBackgroundTaskWithExpirationHandler保护的关键部分,并且是可靠的。 是否有[UIApplication sharedApplication]的任何属性可以存储这些值?或者任何其他方式来了解它?

1 个答案:

答案 0 :(得分:0)

如果您想从应用中的较低位置访问它,我相信您必须将此值存储为属性。如果您将其存储为应用代理的属性,则可以通过以下方式访问它:

[[[UIApplication sharedApplication] delegate] backgroundTask]