【发布时间】:2019-10-25 15:26:14
【问题描述】:
我有一个使用 Sinch SDK 和 CallKit 实现的 VOIP 应用程序。一切正常,除了设备插入耳机时。在后一种情况下,当通话开始时,音频仍然通过设备的主扬声器路由。如果我在通话期间拔下耳机并重新插入,音频就会正确路由到耳机。
我所做的只是
func provider(_ provider: CXProvider, perform action: CXAnswerCallAction) {
guard let c = self.currentCall else {
action.fail()
return
}
c.answer()
self.communicationClient.audioController().configureAudioSessionForCallKitCall()
action.fulfill()
}
这不应该由操作系统自动处理吗?
【问题讨论】:
-
“主扬声器”是指扬声器还是接收器(即手机屏幕顶部的扬声器)?此外,您能否展示一下如何配置音频会话?
-
我的意思是扬声器。我自己不配置音频会话。我正在从 Sinch SDK 调用方法“configureAudioSessionForCallKitCall”:/