我遇到了问题AVPlayer,我正在使用 Parse SDK 来存储用户文件,并且我想获取一个电影文件 (.mp4) 并使用AVPlayer. 直接使用 Parse 文件 url 有问题,所以我尝试了一种不同的方法:
// First, I load the file from the video url
// `name` is the file name fetched from Parse
URLSession.shared.dataTask(with: videoURL) { data, response, error in
DispatchQueue.main.async {
do {
// I will store locally the file to be read by AVPlayer afterwards
let filepath = FileManager.default.temporaryDirectory.appendingPathComponent(name)
try data?.write(to: filepath, options: .atomicWrite)
// I create an AVPlayerItem from the local url
let playerItem = AVPlayerItem(url: filepath as URL)
let player = AVPlayer(playerItem: playerItem)
let playerViewController = AVPlayerViewController()
playerViewController.player = player
self.viewController?.present(playerViewController, animated: true) {
playerViewController.player?.play()
}
} catch {
print(error)
}
}
}.resume()
这适用于模拟器,但在使用真实设备时我最终没有播放视频。
任何想法?
谢谢您的帮助