我正在使用AVplayer从url流音频。正在播放音频,我设置了远程命令事件。我只使用播放/暂停按钮,它们在锁定屏幕上工作。问题是,每当我连接有线耳机时,耳机上的播放/暂停按钮都不起作用。他们为无线耳机工作。如果您能提供正确的帮助,我们将不胜感激。。。
音频会话
let audioSession = AVAudioSession.sharedInstance()
do {
try audioSession.setCategory(AVAudioSessionCategoryPlayback)
UIApplication.shared.beginReceivingRemoteControlEvents()
try audioSession.setActive(true)
} catch {
print(error.localizedDescription)
}
指挥中心
func setupRemoteTransportControls() {
let commandCenter = MPRemoteCommandCenter.shared()
commandCenter.playCommand.isEnabled = true
commandCenter.pauseCommand.isEnabled = true
commandCenter.playCommand.addTarget(handler: { (event) in // Begin playing the current track
if self.audioPlayer.rate == 0.0 {
self.audioPlayer.play()
//return .success
}
return MPRemoteCommandHandlerStatus.success
})
commandCenter.pauseCommand.addTarget(handler: { (event) in // Pause current track
if self.audioPlayer.rate == 1.0 {
self.audioPlayer.pause()
}
return MPRemoteCommandHandlerStatus.success
})
}
最佳答案
我可以通过使用togglePlayPauseCommand来解决我的问题,它用于有线耳机触摸事件。
关于swift - 命令中心事件,仅响应无线耳机播放/暂停,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50453441/