【发布时间】:2016-10-28 15:40:58
【问题描述】:
是否可以运行延迟约 5 分钟的后台任务,如果应用在任务执行之前进入前台,可以取消它?
为了解释这一点,我正在开发的应用程序在打开时有相当长的设置时间。理想情况下,它需要在进入后台时清理所有资源,并在进入前台时从头开始重新创建它们。这部分是为了安全,部分是为了减少设备能源使用(网络、BLE)。
如果用户在短时间内切换到另一个应用程序并返回到我的应用程序,这会产生一种尴尬的用户体验。他们被卡住等待几秒钟,让一切重新初始化。
作为一种妥协,我想在清理过程中增加一个延迟,比如 5 分钟。因此,如果用户在不到 5 分钟内回来,一切都还在那里,立即可用。否则重新初始化确实需要一些时间。我该如何实现它?
【问题讨论】:
-
你想在后台执行什么样的任务?
-
该任务释放了一些资源并重置了导航堆栈。
标签: ios objective-c background