0

我是 swift 和 tvOS 的新手。我想从 url 下载视频并将其显示在 ViewController 中。当我尝试使用 ios 设备时,视频已下载并且工作正常。但使用 tvOS 时,视频未下载。

为什么会这样..?

如何在 Apple TV 中下载和播放视频。

这是我的代码

让 backgroundSessionConfiguration = URLSessionConfiguration.background(withIdentifier: "backgroundSession")

    backgroundSession = Foundation.URLSession(configuration: backgroundSessionConfiguration, delegate: self, delegateQueue: OperationQueue.main)

    let url = URL(string: "myURl")!
    downloadTask = backgroundSession.downloadTask(with: url)
    downloadTask.resume()

func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didFinishDownloadingTo location: URL){

    let path = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.documentDirectory, FileManager.SearchPathDomainMask.userDomainMask, true)
    let documentDirectoryPath:String = path[0]
    let fileManager = FileManager()

    let destinationURLForFile = URL(fileURLWithPath: documentDirectoryPath.appendingFormat("/file.mp4"))

    if fileManager.fileExists(atPath: destinationURLForFile.path){
        showFileWithPath(path: destinationURLForFile.path)
    }
    else{
        do {
            try fileManager.moveItem(at: location, to: destinationURLForFile)
            // show file
            showFileWithPath(path: destinationURLForFile.path)
        }catch{
            print("An error occurred while moving file to destination url")
        }
    }
}  
4

1 回答 1

2

tvOS 对本地存储有一些限制

您的应用程序只能访问设备本地的 500 KB 持久存储(使用 NSUserDefaults 类)。在这个有限的本地存储之外,所有其他数据必须在空间不足时由操作系统清除......

您可以查看此文档以获取更多详细信息: https ://developer.apple.com/library/content/documentation/General/Conceptual/AppleTV_PG/

于 2017-03-29T18:12:07.597 回答