【问题标题】:AVPlayerViewController delegate function not called when user seek用户搜索时未调用 AVPlayerViewController 委托函数
【发布时间】:2017-07-04 12:49:54
【问题描述】:

当用户搜索时,我一直在尝试从Avplayerviewcontroller 获取通知。我在AvplayerControllerdelegate 中找到了一个方法,当用户擦洗时会调用该方法,但是该函数没有被调用。

class ViewController: UIViewController, AVPlayerViewControllerDelegate {

override func viewDidLoad() {
    super.viewDidLoad()
    let url = URL(string:
        "https://dl.pagal.link/upload_file/367/382/7491/Bollywood%20MP4%20Video%20Songs%202015/Super%20Girl%20From%20China%20-%20Sunny%20Leone%20Mp4/Super%20Girl%20From%20China%20-%20Video%20Song%20-%20Sunny%20Leone%20-%20MP4.mp4")
    let player = AVPlayer(url: url!)
    let playerController = AVPlayerViewController()
    playerController.player = player
    playerController.delegate = self
    self.addChildViewController(playerController)
    self.view.addSubview(playerController.view)
    playerController.view.frame = self.view.frame

    player.play()

}


func playerViewController(_: AVPlayerViewController, timeToSeekAfterUserNavigatedFrom: CMTime, to: CMTime){
    print("Called when scrubb")
}
func playerViewController(_: AVPlayerViewController, willResumePlaybackAfterUserNavigatedFrom: CMTime, to: CMTime){
    print("Called when scrubs")
}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}


}

【问题讨论】:

  • 没有人能回答这个问题。
  • 你找到答案了吗?
  • 嗨@HamedGh 不,当你寻找时它仍然是0。
  • 我也有同样的问题。你能解决这个问题吗?看起来,当您寻找时,视图控制器会重新加载,从而寻找位置 0

标签: ios iphone swift avplayer avplayerviewcontroller


【解决方案1】:

因为apple developer documents said,它只适用于Apple TV

在 Apple TV 上,您可以实现与播放导航相关的方法, 插页式内容和内容建议。

如果您为 Apple TV 创建应用并实现 AVPlayerViewControllerDelegate,您可以看到使用此方法,但对于 iphone,您在 AVPlayerViewControllerDelegate 中找不到此方法

【讨论】:

  • 谢谢!一直在抨击为什么没有调用委托方法,这解释了它。
猜你喜欢
  • 1970-01-01
  • 2019-09-20
  • 2021-05-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多