URLSessionDownloadTask не возобновляется при сбое

Задача URLSessionDownload хорошо работает для загрузки видео, но некоторые URL-адреса Authenticated Vimeo для видео HQ (большие данные) генерируют следующую ошибку без возобновления данных.

Так как мне возобновить загрузку???

Я получаю сообщение об ошибке при сбое загрузки видео (разные журналы ошибок):

  1. локализованная ошибка: необязательно (\"Операция не может быть завершена. Ошибка протокола \")

  2. Описание отладки ошибки: Необязательно (Ошибка Домен = Код NSPOSIXErrorDomain =100 \"Ошибка протокола \" UserInfo={_kCFStreamErrorDomainKey=1, _kCFStreamErrorCodeKey=100, NSErrorPeerAddressKey=<100201bb 97650a6d 00000000 00)>000000000000000000000000000000

  3. ошибка unsafelyUnwrapped: Ошибка Domain=NSPOSIXErrorDomain Code=100 \"Ошибка протокола \" UserInfo = {_ kCFStreamErrorDomainKey = 1, _kCFStreamErrorCodeKey = 100, NSErrorPeerAddressKey =<100201bb 97650a6d>000000 000000

//Код

var downloadTask: URLSessionDownloadTask?
var SessionRequest : URLRequest?

let backgroundSessionConfiguration = URLSessionConfiguration.background(withIdentifier: "\(Bundle.main.bundleIdentifier!).background")

let url = URL(string: urlString)!
SessionRequest = URLRequest(url: url)
SessionRequest?.httpMethod = "GET"
downloadTask = backgroundSession.downloadTask(with: SessionRequest!)
downloadTask?.resume()

//Delegate called sometimes when resulting into error with no RESUME DATA

func urlSession(_ session: URLSession, task: URLSessionTask, didCompleteWithError error: Error?) {


        if error != nil {
            debugPrint("Task completed: \(String(describing: task)),localized error: \(String(describing: error?.localizedDescription)) error debug desc: \(String(describing: error.debugDescription)) error unsafelyUnwrapped :\(error.unsafelyUnwrapped)")

        let err = error! as NSError
        let data = (err.userInfo)[NSURLSessionDownloadTaskResumeData]
         //Above data is always nil so cannot resume
        }
}

0 ответов

Другие вопросы по тегам