1

我正在使用后台会话在后台下载图像。我有一些相关的查询。

1)如果我从后台删除我的应用程序会起作用吗?我认为它只会在暂停状态下工作。

2)为什么我们需要在handleEventsForBackgroundURLSession方法中使用self.backgroundSessionCompletionHandler。

3)为什么我们需要实现URLSessionDidFinishEventsForBackgroundURLSession?

4

1 回答 1

4
  1. 如果您在应用程序终止之前已经开始下载任务,那么您的应用程序将在后台启动,给您一个下载完成的回调。
  2. 一旦会话中的所有下载任务完成,我们需要 self.backgroundSessionCompletionHandler 调用完成处理程序。如果你不调用完成处理程序,你的应用程序将在后台被杀死,说断言超出了允许的时间。

  3. 我们需要 URLSessionDidFinishEventsForBackgroundURLSession 来处理上面第 1 点中提到的场景,并在该会话中的所有下载任务完成后调用该会话的完成处理程序。

于 2013-12-05T03:19:32.167 回答