(iOS)在后台运行下载任务

时间:2017-05-20 10:35:56

标签: ios iphone nsurlsession nsurlsessionconfiguration

如果我在ios中使用NSUrlsession backgroundSessionConfiguration,我可以无限期地运行下载任务(例如1小时)。或者它会在3分钟后被杀死吗?

1 个答案:

答案 0 :(得分:0)

是和否。您可以设置下载使用NSURLSession(或URLSession在后​​台运行,因为它在Swift 3中调用。)

我已经用了一段时间了,但这就是我记得的:

当您这样做时,系统将为您管理下载。您的应用可以位于前台,后台或根本不运行,下载仍然继续。如果您的应用在下载完成后不再运行,您的应用将会重新启动。您需要在app委托中实施application:handleEventsForBackgroundURLSession:completionHandler:方法。有关如何在您的应用未运行时完成下载操作的说明,请参阅该方法的文档。

由于系统接管了后台下载管理工作,因此无法让您的应用在后台运行。它遵循与正常相同的背景规则。 (如果用户切换应用程序,它会很快暂停,并且可以在此之后的任何时间终止。)