swift - AVPlayer识别播放结束

标签 swift avplayer

let url:NSURL = NSURL(string: jsonSession[indexPath.row].link)!
        let player = AVPlayer(URL: url)
        player.allowsExternalPlayback = true
        player.usesExternalPlaybackWhileExternalScreenIsActive = true
        let playerViewController = AVPlayerViewController()
        playerViewController.player = player
        self.presentViewController(playerViewController, animated: true) {
            playerViewController.player!.play()
        }

这是我的代码,我尝试建议播放结束后播放下一部电影:-)

最佳答案

最简单的选择是使用 AVQueuePlayer

let items:[AVPlyerItem] = []
for session in jsonSession {
  guard let url = NSURL(string:session.link) else { continue }
  let item = AVPlayerItem(URL:url)
  items.add(item)
}
let player = AVQueuePlayer(items: items)
//now you have the player, do what you were doing before

第二个选项是 Key-Value ObservingAVPlayer 上。它可以做类似的事情

let url:NSURL = NSURL(string: jsonSession[indexPath.row].link)!
let player = AVPlayer(URL: url)
NSNotiicationCenter.defaultCenter().addObserver(self, selector#Selector(ViewController.itemDidFinishPlaying), name: AVPlayerItemDidPlayToEndTimeNotification, object: player.currentItem)
//I assume your ViewController class has a method called itemDidFinishPlaying

这些是粗略的代码示例,请根据需要进行解释。

关于swift - AVPlayer识别播放结束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37642840/

相关文章:

swift - 如何使用 SDImageView 下载 TableViewCell 中的 URL?

swift - 如何立即播放 AVPlayerItems

ios - AVURLAsset 已正确初始化,但有时其关联的 AVPlayerLayer 只会呈现黑色

ios8 - AVPlayerItem videoComposition 卡住IOS8

ios - 暂停播放时 MPNowPlayingInfoCenter react 不正确

xcode - For 循环中的 UITextView 缺少参数

ios - Swift 委托(delegate) - 新手 3 ViewController

ios - 如何在 Swift 的横向模式下更改图标的旋转?

ios - 在 UITextField 中插入文本后不需要的 UIView 框架重置

audio - 无法播放带有声音的 AVMutableComposition