我正在寻找一种方法来观察播放器,以便在用户增加或减少苹果电视的音量时检测到。我已经成功地使用以下方法在iOS上实现了这一点:
var audioSession: AVAudioSession?
audioSession?.addObserver(self, forKeyPath: "outputVolume", options: [.new], context: &videoPlayerViewControllerKVOContext)
if keyPath == "outputVolume" {
guard let mute = (change?[NSKeyValueChangeKey.newKey] as? NSNumber)?.floatValue else {
return
}
var isMuted = false
if (mute == 0) && (!player.isMuted) {
isMuted = true
} else if (mute.isZero) && (player.isMuted) {
isMuted = false
}
}
然而这种方法在tvOS上不起作用。是否有办法在tvOS上实现此功能?