当我的VOIP应用程序中开始使用CallKit时,我遇到了多个呼叫的问题。当接听第二个电话并将第一个电话置于保持状态时,CallKit没有声音
当有一对一VOIP呼叫时,声音工作正常。但一旦一方获得另一个VOIP呼叫,并选择保留并接受选项;第一个通话成功挂起,第二个通话被应答;但声音现在已经关闭了。即使在调用之间交换也不起作用。并且删除一个呼叫也不起作用。 我正在使用RTP进行语音。
我试图把断点,并检查AVAudioSession的类别和模式是否正确。
在控制台中,我可以检查我的末端,有多个呼叫的设备,停止发送声音数据包。
我使VOIP之前reportNewIncomingCallWithUUID和CXStartCallAction提供商。
与GSM呼叫相同的情况。如果有一对一VOIP呼叫,并且声音正常,并且在一侧接收到GSM呼叫,并且用户选择保持并接受选项,则GSM呼叫中的声音工作正常。但是,如果用户使VOIP呼叫处于活动状态,并通过交换呼叫来保持GSM呼叫,则VOIP呼叫中没有声音。交换呼叫并使GSM呼叫处于活动状态,声音再次正常工作。但VOIP电话没有声音。
在这种情况下,我们得到AVAudioSessionInterruptionTypeBegan但AVAudioSessionInterruptionTypeEnded永远不会被调用。即使在GSM呼叫结束之后。
有没有人遇到类似的问题?