【问题标题】:AVRoutePickerView doesn't pick up change to route made by overrideOutputAudioPort(.speaker)AVRoutePickerView 不接受 overrideOutputAudioPort(.speaker) 对路由所做的更改
【发布时间】:2019-12-09 12:46:11
【问题描述】:

我使用 CallKit 发起 VoIP 呼叫,使用 AVAudioSession.sharedInstance.overrideOutputAudioPort(.speaker) 将音频强制发送到扬声器,然后打开 AVRoutePickerView

视图中选择的输出是iPhone-- iPhone 上的耳机。我希望它显示 speaker 被选中。

这可能是什么原因造成的?我应该以不同的方式强制输出到扬声器吗?有没有其他方法可以公开路由选择功能?

奇怪的是,如果你锁定手机并查看CallKit UI,它显示它正在路由到扬声器

【问题讨论】:

  • 我也有同样的问题。你找到解决办法了吗?

标签: ios swift avaudiosession avkit


【解决方案1】:

我遇到了同样的问题。在我的代码中,我覆盖了 .none 的音频路由,它确实有效。但是 AvRoutePickerView 显示 .speaker 被选中。这让我很困惑。

【讨论】: