延迟后如何恢复下载任务?

我看了一下这个线程:

iOS NSURLSession, how to retry in didCompleteWithError

Rob提出的第三种方法是我要尝试执行的操作,但是我不知道如何设置延迟。

到目前为止,我有这样的事情:

-(void)URLSession:(NSURLSession*)session task:(NSURLSessionTask*)task didCompleteWithError:(NSError*)error {
  if ( error == nil )
    return;

  NSData* resume_data = error.userInfo[NSURLSessionDownloadTaskResumeData];
  NSURLSessionDownloadTask* new_task = [_session downloadTaskWithResumeData:resume_data];
  [new_task resume];
}

我想等待10秒钟(例如),然后再继续。

最佳答案

如果[new_task resume]有效,那么将:

[new_task performSelector:@selector(resume) withObject:nil afterDelay:10.0]

10-04 20:45
查看更多