У меня есть это приложение, основная цель которого - записать видео с помощью AVFoundation, а затем сохранить делегат выходного файла.
При первом обычном запуске приложение могло правильно записать и сохранить видео, и я мог загрузить полученный URL-адрес выходного файла в Avplayer, который у меня есть на следующем контроллере просмотра.
AVPlayer будет нормально работать, если Xcode не будет повторно запущен. Под повторным запуском я имею в виду повторное нажатие Command + R или нажатие кнопки Play в xcode, чтобы восстановить повторный запуск.
Что происходит, когда я снова запускаю приложение, так это то, что я все еще могу видеть файлы и перечислять их с помощью печати, но когда я пытаюсь получить доступ к записанному файлу, приложение больше не будет воспроизводить видео. Казалось бы, видео не загружалось должным образом или что-то еще, даже если оно уже работало ранее. После этого я все еще мог записывать новые и воспроизводить только что записанные, но не старые файлы.
Старые файлы до пересборки приложения выглядели так в AVPlayer
Также AVPlayer успешно вернет статус .readyToPlay моему наблюдателю.
Я не понимаю, как мне продолжать исправлять это.
if let videoPreviewController = storyBoard.instantiateViewController(withIdentifier: "VideoPreviewController") as? VideoPreviewController {
let url = NSURL(fileURLWithPath: "file:///var/mobile/Containers/Data/Application/61E182ED-D490-4C7D-BAB7-C90D095C7E43/Documents/Thursday,%208%20June%202017%20at%201:47:51%20PM%20Philippine%20Standard%20Time.mov")
videoPreviewController.player = AVPlayer()
let playerItem = AVPlayerItem.init(url: url as URL)
videoPreviewController.player?.replaceCurrentItem(with: playerItem)
videoPreviewController.report = relationship
videoPreviewController.appointment = self.appointment
navigation.pushViewController(videoPreviewController, animated: true)
}