Я работал над небольшим проектом, который включает загрузку видеофайла с веб-сервера, копирование указанного файла в каталог документов, а затем воспроизведение его через AVPlayer.AVPlayer & video from documents directory
Загрузка файла в каталог документов не была проблемой. Я могу загрузить файл и сохранить его без проблем. Однако, когда дело доходит до загрузки файла в AVPlayer, и при этом я воспроизвожу его в экземпляре AVPlayerViewController, контроллер видео появляется, как следует, но видео не загружается.
Я понимаю, что при тестировании в симуляторе каталог документов меняется каждый раз при восстановлении проекта. Вот почему я проверяю, присутствует ли файл до начала игры, и хотя я знаю, что файл присутствует, он по-прежнему отказывается играть.
Вот что мой игрок код выглядит следующим образом:
let fileName = downloadURL.characters.split("/").map(String.init).last as String!
let fileNameHD = downloadURLHD.characters.split("/").map(String.init).last as String!
let downloadFilePath = getDocumentsDirectory() + "/" + "\(fileNameHD)"
let checkValidation = NSFileManager.defaultManager()
if checkValidation.fileExistsAtPath(downloadFilePath){
print("video found")
}
let videoFile = NSURL(string:downloadFilePath)
let player = AVPlayer(URL: videoFile!)
let playerController = AVPlayerViewController()
playerController.player = player
playerController.view.frame = self.view.frame
player.play()
self.presentViewController(playerController, animated: true) {
playerController.player!.play()
}