使用 AVPlayer 播放的视频在 swift3 中从其容器视图中消失



我正在使用AVPlayer播放视频。我在 UIView 上使用 CALayer 的 addSubLayer 方法,我想在其上播放视频。一切正常,但是当我在后台发送应用程序然后再次将应用程序带回前台时,视频消失了(视频持续时间仅为 1 秒(。直到我在后台发送应用程序,视频(即使它已经完成播放(停留在容器视图上,我们可以看到它。但是一旦我做背景,然后是应用程序的前景,视频/可能是图层消失。

将不胜感激。谢谢。

当您将应用置于前台时,您似乎希望保留视频的最后一帧以保留在容器视图上。

请使用actionAtItemEnd设置 AVPlayer 对象的属性

AVPlayerActionAtItemEnd.pause选项。这将在播放器播放完视频后暂停视频,并将图层保留在容器视图中。

请为应用程序背景/前景设置观察者。当你的应用从后台来到前台时,在你的观察者方法中插入下面的代码。

playerLayer = AVPlayerLayer(player: avPlayer)
view.layer.insertSublayer(playerLayer, at: 0)

最新更新