我在网上看一些关于背景任务和背景抓取的文件。
后台任务是在应用程序仍在运行时在后台执行的任务。当应用程序处于后台时,任务有一个有限的时间来完成任务,一旦它完全处于后台,任务也必须结束。
后台获取是应用程序完全处于后台或非活动状态的地方,如果资源可用,将在某个时间点执行该操作。
这是我非常简短的理解。
发布于 2017-05-29 09:46:17
是的,你的理解是对的!让我更深入地解释一下!
背景任务是指在后台继续工作的能力。
例如,如果您正在播放audio并按“主页”按钮,那么音频可以继续在后台播放。地点也一样!您可以在后台不断更新位置。这只是一个例子,有更多的类型,在后台工作。你可以说这种事情作为背景任务。可以在后台模式下继续工作的任务称为后台任务。
您可以参考苹果文档来了解iOS可以执行或允许的哪种背景任务。现在background fetch是完全不同的东西。如果应用程序在background or in inactive state中,则可以定期检查新内容或执行操作。系统自动唤醒您的应用程序在后台时,它是可能的,并可以执行一些操作。例如,您可以说是facebook。Facebook有时间线,应该定期有新的数据,所以它可以使用后台获取从服务器获取数据,无论应用程序是不活动的!因此,当用户打开应用程序时,他/她可以获得最好的用户体验,因为内容已经被background fetch下载了!
您可以参考苹果文档获取背景!它说,
需要定期检查新内容的应用程序可以要求系统唤醒它们,以便它们能够为该内容启动一个获取操作。若要支持此模式,请从Xcode项目中“功能”选项卡的“后台模式”部分启用后台提取选项。(还可以通过在应用程序的UIBackgroundModes文件中包含带有fetch值的UIBackgroundModes键来启用这种支持。)启用此模式并不能保证系统将在任何时候给您的应用程序执行背景获取。系统必须平衡您的应用程序获取内容的需求与其他应用程序和系统本身的需求。在评估了这些信息之后,当有很好的机会时,系统就会给应用程序时间。
https://stackoverflow.com/questions/44238987
复制相似问题