AVPlayerViewController (tvOS) не останавливается на viewWillDisappear
У меня есть несколько AVPlayerViewControllers
установить как ViewControllers
из UITabBarController
, То, что я хочу, это иметь видео в настоящее время видимым AVPlayerViewController
автоматически приостанавливать воспроизведение, когда пользователь переключается на другую вкладку (которая является другой AVPlayerViewController
)
Я попробовал этот подход:
override func viewWillDisappear(animated: Bool) {
player?.pause()
super.viewWillDisappear(animated)
}
но видео просто продолжает работать в фоновом режиме. (аудио все еще работает, по крайней мере). Отладчик говорит, что свойство player не равно nil в viewWillDisappear. Я уже пытался безоговорочно и принудительно распаковывать, но безрезультатно.
1 ответ
Я смог определить проблему. Кажется, что вы не можете сделать паузу в viewWillDisappear
ни с pause()
ни с player?.rate = 0.0
, Поэтому, чтобы ваше видео не воспроизводилось в фоновом режиме, вы должны установить AVPlayerViewController
"s player
свойство ноль в viewWillDisappear
, К сожалению, это означает, что вы должны написать некоторый код для сохранения вашего состояния воспроизведения.
Для меня это похоже на ошибку, надеюсь, это будет исправлено позже.