NSFileProviderExtension扩展显示下载进度

时间:2018-02-21 12:59:46

标签: ios swift fileprovider-extension

我已经实现了FileProvider扩展。

class MyProviderExtension: NSFileProviderExtension {

    override func startProvidingItem(at url: URL, completionHandler: ((_ error: Error?) -> Void)?) {
            downloading file using URL and implemented download delegates

// Download Delegate
    func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didWriteData bytesWritten: Int64, totalBytesWritten: Int64, totalBytesExpectedToWrite: Int64) {

**// How can I upload the download progress here.**
}

   }
}

我无法在下载代理中获得任何UI处理程序来更新进度并在成功下载后更新单元格下载按钮。

1 个答案:

答案 0 :(得分:0)

要支持在下载/上传进度上显示进度,您需要执行以下操作:

  1. 使用NSURLSessionTask下载/上传文件
  2. 将NSURLSession与backgroundSession一起使用([NSURLSessionConfiguration backgroundSessionConfigurationWithIdentifier:])
  3. 使用[NSFileProviderManager registerURLSessionTask:forItemWithIdentifier:completionHandler:]构建任务标识符映射。

然后,文件提供程序扩展名将在UI上显示进度。