目前我正在从服务器下载文件,效果很好。
我的问题是,在实际下载开始之前,我怎么知道 url 是否恢复 capability?
下面是一些代码片段,
class Downloader:NSObject,URLSessionDownloadDelegate {
/*
SOME PROPERTIES & DECLARATIONS
*/
override init() {
super.init()
let backgroundSessionConfiguration = URLSessionConfiguration.background(withIdentifier: url.absoluteString)
backgroundSessionConfiguration.networkServiceType = .default
self.defaultSession = URLSession(configuration: backgroundSessionConfiguration, delegate: self, delegateQueue: OperationQueue.main)
}
func start(_ blockownloaderCompletionHandler?) {
guard self.input == nil else { return }
guard self.output == nil else { return }
if let data = self.resumableData {
self.downloadTask = self.defaultSession.downloadTask(withResumeData: data)
}else {
let request = URLRequest(url: self.input!, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 0.60)
self.downloadTask = self.defaultSession.downloadTask(with: request)
}
self.downloadTask.resume()
}
func pause() {
self.downloadTask.cancel { (data) in
self.resumableData = data
}
}
}
请在这种情况下指导我。
提前致谢
Best Answer-推荐答案 strong>
只有满足以下条件才能恢复下载:
→ 来源:https://developer.apple.com/documentation/foundation/urlsessiondownloadtask/1411634-cancel
关于ios - 如何检查当前 URLSessionDownloadTask 的恢复能力?,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/46316524/
|