O Swift iOS -AVPlayer Video congela / pausa quando o aplicativo volta do segundo plano
Eu tenho um vídeo sendo reproduzido em loop na página de login do meu aplicativo. Eu segui este tutorial do YouTube para fazê-lo funcionarloop de vídeo no controlador de exibição
O problema é que quando o aplicativo entra em segundo plano, se eu não voltar imediatamente, quando voltar, o vídeo ficará congelado.
De acordo comDocumentos da Apple isso deveria acontecer.
Tentei usar o Centro de NotificaçãoNotification.Name.UIApplicationWillResignActive
mas isso não funcionou.
Como faço para que o vídeo continue sendo reproduzido depois que o aplicativo retornar do segundo plano?
var player: AVPlayer!
var playerLayer: AVPlayerLayer!
override func viewDidLoad() {
super.viewDidLoad()
configurePlayer()
}
@objc fileprivate func configurePlayer(){
let url = Bundle.main.url(forResource: "myVideo", withExtension: ".mov")
player = AVPlayer.init(url: url!)
playerLayer = AVPlayerLayer(player: player!)
playerLayer.videoGravity = AVLayerVideoGravityResizeAspectFill
playerLayer.frame = view.layer.frame
player.actionAtItemEnd = AVPlayerActionAtItemEnd.none
player.play()
view.layer.insertSublayer(playerLayer, at: 0)
NotificationCenter.default.addObserver(self, selector: #selector(playerItemReachedEnd), name: NSNotification.Name.AVPlayerItemDidPlayToEndTime, object: player.currentItem)
NotificationCenter.default.addObserver(self, selector: #selector(playerItemReachedEnd), name: Notification.Name.UIApplicationWillResignActive, object: player.currentItem)
}
@objc fileprivate func playerItemReachedEnd(){
player.seek(to: kCMTimeZero)
}