NSUrlSession:是否可以在后台上传文件?
NSUrlSession: is it possible to upload files in the background?
使用 NSUrlSession
和后台配置让我下载文件,即使应用程序被 iOS 终止。出于好奇,我尝试添加一个上传任务并注意到它不会继续,即使应用程序只是暂停也是如此。
Apple 谈到“Downloading in the background”,但他们没有明确说明上传 是不可能的。
有人可以确认上传和后台会话配置不能一起工作吗?
他们确实一起工作。
您需要做的是:
有一个带有后台配置的 NSURLSessionConfiguration
NSURLSessionConfiguration *conf = [NSURLSessionConfiguration backgroundSessionConfiguration:@"backgroundSession"];
设置一个 NSURLSession (@属性 NSURLSession *urlSession)
获取文件路径(fullPath)
创建 NSURLRequest(请求)
创建一个 NSURLSessionTask
NSURLSessionTask*task = [self.urlSession uploadTaskWithRequest:request fromFile:fullPath];
[task resume];
任务将在后台 运行。您可以从 NSURLSession 委托方法中获取状态。
干杯
使用 NSUrlSession
和后台配置让我下载文件,即使应用程序被 iOS 终止。出于好奇,我尝试添加一个上传任务并注意到它不会继续,即使应用程序只是暂停也是如此。
Apple 谈到“Downloading in the background”,但他们没有明确说明上传 是不可能的。
有人可以确认上传和后台会话配置不能一起工作吗?
他们确实一起工作。
您需要做的是:
有一个带有后台配置的 NSURLSessionConfiguration
NSURLSessionConfiguration *conf = [NSURLSessionConfiguration backgroundSessionConfiguration:@"backgroundSession"];
设置一个 NSURLSession (@属性 NSURLSession *urlSession)
获取文件路径(fullPath)
创建 NSURLRequest(请求)
创建一个 NSURLSessionTask
NSURLSessionTask*task = [self.urlSession uploadTaskWithRequest:request fromFile:fullPath];
[task resume];
任务将在后台 运行。您可以从 NSURLSession 委托方法中获取状态。
干杯