ios - UIApplication -beginReceivingRemoteControlEvents 导致音乐应用接管音频

标签 ios avaudiosession external-accessory remote-control

我有一个应用程序可以与用户对话并收听用户的语音响应。我注意到,当我将手机插入我的汽车音响系统并使用该应用程序时,当我的应用程序完成说话时,它会收到中断通知并且音乐应用程序开始播放音乐而不是让我的应用程序继续。

如果电话未连接到外部设备,则不会发生这种情况,并且在我插入电话时不会发生这种情况,只有当语音停止并且电话正在通过汽车播放时才会发生。我已经进行了一些测试,并确定当我在我的应用程序上调用 beginReceivingRemoteControlEvents 方法时会出现此行为。如果我在应用程序加载时没有注册远程控制事件,则不会出现问题,但我无法显示音频的“正在播放”信息或使用汽车的控件来控制播放。

有没有人找到一种方法来监听远程控制事件而不丧失对设备音频播放的控制?

最佳答案

这通常是由汽车音响引起的,而不是由您的 iOS 设备引起的。查看立体声音响的手册并将其从音频模式切换到 iPod 模式(或您的手册为这些选项命名的任何名称)。基本上,您的汽车音响正在监听音轨结束通知并使用它来触发“播放下一首轨道”通知。这会调用 MPMusicPlayer,它通常会在您的设备库中按字母顺序选择第一首轨道。软件中可能有解决方法,但我发现最简单的方法是更改​​汽车音响的设置。

关于ios - UIApplication -beginReceivingRemoteControlEvents 导致音乐应用接管音频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23848928/

相关文章:

ios - 如何遍历数组并根据字符串值删除项目

ios - 如何在 iOS 中模仿 UISearchBar 的 Safari 行为

ios - AVAudioSession 与 AVSpeechUtterance 混合

ios - showBluetoothAccessoryPickerWithNameFilter 中的 NSPredicate

iOS 7.1 更新打破了 External Accessory inputStream UART 读取能力

ios - CoreBluetooth 和外部附件在 iOS10 中不起作用

ios - 同一个人 iTunes 帐户上的多个开发者

ios - UITextField EditingDidBegin 在 IOS 14.4 上触发两次

ios - 耳机插好了吗? IOS 7

iphone - 转换后的 MP3 格式不支持 11025 和 22050 采样率