【问题标题】:Set title and image for now play audio in background设置标题和图像现在在后台播放音频
【发布时间】:2015-12-04 13:22:01
【问题描述】:

如何使用AVPlayer设置正在后台播放音频的标题和图片?

到目前为止我的代码:

  let path: String = String(format: "pathtoaudio")
    let aPlayerItem: AVPlayerItem = AVPlayerItem(URL: NSURL(string: path)!)
    let anAudioStreamer: AVPlayer = AVPlayer(playerItem: aPlayerItem)
    player = anAudioStreamer
    let playerController = AVPlayerViewController()
    playerController.player = player
    self.addChildViewController(playerController)
    self.view.addSubview(playerController.view)
    playerController.view.frame = self.view.frame
    player.addObserver(self, forKeyPath: "status", options: NSKeyValueObservingOptions.New, context: nil)
    let nowPlayingInfo = [MPMediaItemPropertyArtist : "Artist!",  MPMediaItemPropertyTitle : "Title!", MPMediaItemPropertyArtwork : MPMediaItemArtwork(image: UIImage(named: "nour.jpg")!)]
    MPNowPlayingInfoCenter.defaultCenter().nowPlayingInfo = nowPlayingInfo
    UIApplication.sharedApplication().beginReceivingRemoteControlEvents()

我正在尝试使用MPNowPlayingInfoCenter,但在锁定屏幕上看不到信息。

【问题讨论】:

    标签: ios iphone swift avplayer mpnowplayinginfocenter


    【解决方案1】:

    您的 Title 和 Artist 键看起来正确,但要设置专辑插图,您需要使用 MPMediaItemArtwork 对象:

    let nowPlayingInfo = [MPMediaItemPropertyArtist : "Artist!",  MPMediaItemPropertyTitle : "Title!", MPMediaItemPropertyArtwork : MPMediaItemArtwork(image: UIImage(...))]
    MPNowPlayingInfoCenter.defaultCenter().nowPlayingInfo = nowPlayingInfo
    

    您可能还需要显式订阅远程控制事件:

    UIApplication.sharedApplication().beginReceivingRemoteControlEvents()
    

    【讨论】:

    • 我这样做了,我也没有在锁屏中看到信息,请检查我上面的代码编辑
    • 好吧,试过了,它根本不适合我。 iOS(或我正在投射的 AppleTV)UI 上没有任何痕迹。但是,当我开始投射时,AppleTV 屏幕上有一条短暂的消息,其中包含我正在播放的项目的 URL。苹果关于这个主题的文档太可怕了,根本不存在,这个答案只会增加新的痛苦......
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-26
    • 1970-01-01
    • 2021-09-03
    • 2011-03-18
    相关资源
    最近更新 更多