2013-11-28 54 views
1

我正在后台下载具有后台会话的图像。我有一些相关的疑问。iOS 7使用NSURLSession的后台任务

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

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

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

回答

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

  3. 我们需要URLSessionDidFinishEventsForBackgroundURLSession处理方案在上述第1点中提到,并调用 completionhandler该届会议是一次会话中完成 所有的下载任务。