我正在开发一个需要大约每 60 分钟获取一次数据的应用程序,我认为后台获取非常适合。我开发了一个应用程序,当在 xCode 中运行时,我模拟后台提取按预期工作,但在设备上运行时似乎不起作用。我还下载了几个演示应用程序,所有这些应用程序都可以在模拟器上运行,但不能在设备上运行,我正在增加角标(Badge)计数。
问题与后台抓取的概念更相关,是否适合我的需要?
- 在后台以及屏幕锁定时后台获取是否有效?
- 当应用程序处于前台时,后台获取不起作用,这是否正确,如果是,我将实现 NSTimer。在前台但设备锁定屏幕时会发生什么情况?
- 后台根据应用程序使用情况调整其更新周期,最初我将 setMinimumBackgroundFetchInterval 设置为 60,但即使设置为 5,后台提取也不会在设备上运行
- 应用程序设置正确并显示后台提取已启用/允许。
Best Answer-推荐答案 strong>
只要屏幕锁定,您的应用就会进入后台状态(即使应用在前台)。并且每当调用 *- (void)applicationDidEnterBackgroundUIApplication )application 时,根据操作系统的空闲程度,可能会发生后台获取。获取间隔并不总是准确的。在间隔的第 60 分钟内,如果操作系统不空闲,则不会发生提取。确保您的应用位于设备的后台并使用 UIApplicationBackgroundFetchIntervalMinimum 而不是指定 60 分钟的间隔。 Fetch 更有可能发生。
关于ios - 背景提取 - 概念/理解,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/25108745/
|