Загрузка с AVAssetDownloadTask выдает мне ошибку на URLSession - iOS 10.x - PullRequest
0 голосов
/ 05 сентября 2018

Я слежу за Apple Руководство по программированию воспроизведения мультимедиа пример.

Следующий код работает на iOS 11, но вылетает на iOS 10.

Я установил загрузку следующим образом:

func setupAssetDownload(for item: DownloadItem) {
    let url = URL(string: item.urlVideo!)!
    let asset = AVURLAsset(url: url)

    // Create new AVAssetDownloadTask for the desired asset
    guard let task = downloadSession.makeAssetDownloadTask(asset: asset,
                                                           assetTitle: item.title!,
                                                           assetArtworkData: nil,
                                                           options: [AVAssetDownloadTaskMinimumRequiredMediaBitrateKey: 265_000])
        else { return }

    // Start task and begin download
    task.resume()
}

И терпит неудачу здесь:

func urlSession(_ session: URLSession, task: URLSessionTask, didCompleteWithError error: Error?) {
    /*
     This is the ideal place to begin downloading additional media selections
     once the asset itself has finished downloading.
     */
    if let error = error as NSError? {
        switch (error.domain, error.code) {
        case (NSURLErrorDomain, NSURLErrorCancelled):
            /*
             This task was canceled, you should perform cleanup using the
             URL saved from AVAssetDownloadDelegate.urlSession(_:assetDownloadTask:didFinishDownloadingTo:).
             */
            ...

        case (NSURLErrorDomain, NSURLErrorUnknown):
            fatalError("Downloading HLS streams is not supported in the simulator.")

        default:
            fatalError("An unexpected error occured \n\(error.code) - \(error.domain) - \(error.localizedDescription)")
        }
    } else {
        // downloaded
    }
}

Я получаю следующую ошибку:

Error Domain=AVFoundationErrorDomain 
Code=-11800 \"The operation could not be completed\" 
UserInfo={
    NSLocalizedDescription=The operation could not be completed,
    NSLocalizedFailureReason=An unknown error occurred (-12780)
}

Может ли кто-нибудь указать мне, как решить эту проблему?

Примечание: я читал кое-что об использовании fileURLWithPath вместо string для составления URL, но не работал вообще.

Не связано с NSAppTransportSecurity.

...