每次应用重新启动时我都应该调用 setMinimumBackgroundFetchInterval 吗?

Should I call setMinimumBackgroundFetchInterval every time the app restarts?

我开发了一个使用后台获取的应用程序。我将更新之间的最小间隔设置为最小值:

[[UIApplication sharedApplication] setMinimumBackgroundFetchInterval:UIApplicationBackgroundFetchIntervalMinimum];

我还以为这个值是系统保存的,不用再设置了when/if应用重启了。 但是,我刚刚注意到我的其中一台设备上的最后一次后台提取是在两周前。我知道,更新之间的间隔可能会有所不同,但我认为两周是不正常的。特别是考虑到它工作了几个月,每 20-30 分钟调用一次后台更新。

不幸的是,我无法找到一种方法来获取 MinimumBackgroundFetchInterval 来检查我的理论(顺便说一句,有谁知道如何获取它吗?)。我只检查了application.backgroundRefreshStatus,它等于UIBackgroundRefreshStatusAvailable,但我认为(我不确定)这仅意味着用户允许应用程序使用后台更新。

好吧,原来NO,我们不需要在每次应用重新启动时调用setMinimumBackgroundFetchInterval

我做了一个实验:我将它设置为 UIApplicationBackgroundFetchIntervalMinimum(打开后台获取),然后手动关闭应用程序(通过任务管理器)然后重新启动它,但没有调用setMinimumBackgroundFetchInterval。该应用程序继续像以前一样执行后台提取。

我希望这些信息对某些人有所帮助,因为它没有在文档中明确说明(至少,我没有看到)。至于我,我必须找到另一个可能的原因,让我的应用程序在两周内无法运行。