背景提取 - 概念/理解

时间:2014-08-03 20:21:45

标签: ios background-process

我正在开发一个大约每60分钟需要获取数据的应用程序,我认为后台提取非常适合。我开发了一个应用程序,当在xCode中运行并且我模拟后台提取按预期工作时,但是当在设备上运行时似乎不起作用。我还下载了几个演示应用程序,所有这些应用程序都可以在模拟器中运行,但不能在设备上运行,我正在增加徽章数量。

这个问题与背景提取的概念有关,是否适合我的需要?

  1. 在后台以及屏幕锁定时,后台提取是否有效?
  2. 当应用程序在前台时,后台提取不起作用,这是正确的,如果是这样,我将实现NSTimer。在前台但设备锁定屏幕时会发生什么?
  3. 后台根据应用程序使用情况调整更新周期,最初我将setMinimumBackgroundFetchInterval设置为60,但即使设置为5,背景提取也不会在设备上运行
  4. 应用程序设置正确,并显示启用/允许后台提取。

1 个答案:

答案 0 :(得分:2)

只要屏幕被锁定,您的应用就会进入后台状态(即使应用处于前台)。每当调用* - (void)applicationDidEnterBackground:(UIApplication )应用程序时,根据操作系统的空闲程度,可能会发生后台提取。获取间隔并不总是准确的。在你的间隔的第60分钟,如果操作系统不是免费的,那么获取不会发生。确保您的应用位于设备的后台,并使用 UIApplicationBackgroundFetchIntervalMinimum ,而不是指定60分钟的间隔。抓取更有可能发生。