在 tvOS 后台接收 "Siri remote" 事件

Receive "Siri remote" event in background on tvOS

我已经为 tvOS 制作了一个广播播放器,但我不希望音频流在后台继续播放。所有这些都很好用,而且非常简单。

但是,如果在后台按下 "play/pause" 按钮,我想停止 stream/audio。但我不知道该怎么做。 我只希望它停止,而不是暂停。这就是 Apple Radio 的工作原理。

我正在使用界面生成器设置的新闻事件和操作来处理我的所有输入。 到目前为止,我发现它是如何在 iOS 上工作的,并且有人建议我使用,但 remoteControlReceivedWithEvent 从未被调用(甚至在前台也不被调用)。

非常感谢您对此提供的任何帮助,尤其是如果您有幸自己实施的话;)

UIApplication.sharedApplication().beginReceivingRemoteControlEvents()

override func remoteControlReceivedWithEvent(event: UIEvent?) {}

这我能够使用 MediaPlayer's MPRemoteCommandCenter

开始工作
func setupRemoteCommandCenter() {
    let remoteCommandCenter = MPRemoteCommandCenter.sharedCommandCenter()

    let pauseCommand = remoteCommandCenter.pauseCommand
    pauseCommand.enabled = true
    pauseCommand.addTarget(self, action: "pauseEvent")
}

func pauseEvent() {
    pause()
}