Я играю видео, которые находятся в моем комплекте приложений.
Они воспроизводятся правильно.
Однако, когда я звоню, чтобы закрыть AVPlayerViewController, он заметно удаляется из иерархии представления, но, если я выключаю устройство iOS и снова включаю его, на экране блокировки появляется мультимедийный элемент управления, показывающий это видео, и кнопка «воспроизведение».
Если вы нажмете кнопку воспроизведения, вы получите только звук инет видео.
Моя проблема в том, что я не понимаю, почему «dismiss» не полностью «убивает» игрока, когда я закончил.
Вот код презентации:
let path = Bundle.main.path(forResource: filename, ofType: type)
let url = NSURL(fileURLWithPath: path!)
let player = AVPlayer(url: url as URL)
NotificationCenter.default.addObserver(self,
selector: #selector(VideoLibraryViewController.didFinishPlaying(notification:)),
name: NSNotification.Name.AVPlayerItemDidPlayToEndTime,
object: player.currentItem)
self.playerController = AVPlayerViewController()
self.playerController?.player = player
self.playerController?.allowsPictureInPicturePlayback = true
self.playerController?.showsPlaybackControls = YES
self.playerController?.delegate = self
self.playerController?.player?.play()
self.present(self.playerController!, animated: true, completion : nil)
Вот код увольнения:
// Delegate can implement this method to be notified when Picture in Picture will start.
func playerViewController(_ playerViewController: AVPlayerViewController, willEndFullScreenPresentationWithAnimationCoordinator coordinator: UIViewControllerTransitionCoordinator)
{
self.playerController?.dismiss(animated: NO, completion: nil )
}
А вот что осталось в общесистемном медиаплеере, который отображается на экране блокировки / в центре управления: