iOS:输入背景时完成任务

Sii*_*las 6 objective-c background-process ios

如果我有一个大文件下载正在进行应用程序移动到后台,有没有办法让下载执行功能保持活动状态?

我知道beginBackgroundTaskWithExpirationHandler:当应用程序移动到后台时会被调用,我可以在那里开始我的任务,但我不想开始新的任务,我想完成我的旧任务.它可以解决beginBackgroundTaskWithExpirationHandler:,但为此我需要暂停下载并从正确的地方恢复它,这简直是愚蠢的.

理想情况下,我想要的是我使用过期处理程序包装我的下载功能,因此我的下载功能会在应用程序移动到后台后的指定时间内继续执行.

Rob*_*ier 7

理想情况下,我想要的是我使用过期处理程序包装我的下载功能,因此我的下载功能会在应用程序移动到后台后的指定时间内继续执行.

这正是它的工作原理.beginBackgroundTaskWithExpirationHandler:进入背景时不会调用.这就是所说的表示你正在开始的东西,如果你碰巧在它正在运行时进入后台,你想要完成.用beginBackgroundTaskWithExpirationHandler:and 包装现有的下载代码endBackgroundTask:.