首页 > 解决方案 > iOS 12 的 AVPlayerViewController 问题

问题描述

我正在使用 AVPlayerViewController 播放视频,它适用于 iOS 11,但相同的代码在 iOS 12 中不起作用。有人可以帮我解决这个问题吗?

 let url: URL = Bundle.main.url(forResource: "sampleVideo", withExtension: ".mp4")!

    let avAsset = AVURLAsset(url: url)
    let playerItem = AVPlayerItem(asset: avAsset)
    player = AVPlayer(playerItem: playerItem)
    playerController = AVPlayerViewController()
    playerController?.player = player
    playerController?.view.frame = videoHolderView?.bounds ?? CGRect.zero

    guard let videoView = playerController?.view else { return }
    videoView.tag = 101
    videoHolderView.addSubview(videoView)
    player?.play()

标签: iosswiftavplayeravplayerviewcontrollerios12

解决方案


Finally figured out the issue!!! in iOS 12 if you disable PlayBackControls of AVPlayerController, AVPlayer will still consume the tap gesture.

playerController?.showsPlaybackControls = false


推荐阅读