3

我正在开发一个具有视频流的应用程序。我使用 AVPlayer 在设备上或使用 AirPlay 流式传输视频。使用 AirPlay 时,您可以锁定屏幕并继续播放视频。在您的设备的主屏幕上,您将获得控件:滑动条、播放/暂停、后退/前进。

都好。现在我想显示一些关于正在播放的视频的信息。我阅读了很多关于 MPNowPlayingInfoCenter 的内容,所有内容看起来都非常简单。但是,当我设置 nowPlayingInfo 时,主屏幕上没有设置任何内容。

我不知道我做错了什么。我在 AVPlayer 中有一个不允许我这样做的设置吗?我设置playingInfo的时间错了吗?(我尝试在播放前、加载流后、启动流后等设置)

下面的代码被执行,但它没有在锁定屏幕上设置 nowPlayingInfo:

 MPNowPlayingInfoCenter.defaultCenter().nowPlayingInfo = [MPMediaItemPropertyTitle: "My Video Title"]
4

1 回答 1

0

您可以使用AVPlayerViewController显示在应用程序中播放的视频。它需要AVPlayer。然后你可以将 AVPlayerViewController 的updatesNowPlayingInfoCenter设置为false

    let playerController = AVPlayerViewController()
    var player: AVPlayer = AVPlayer(url: URL(string: "url_string")!)
    playerController.player = player
    playerController.updatesNowPlayingInfoCenter = false
    present(playerController, animated: true) {
        player.play()
    }

此外,您需要设置 MPNowPlayingInfoCenter.default()。nowPlayingInfo要显示的信息。

于 2019-09-19T07:19:43.610 回答