最近用环信的视频通话,想实现免提和听筒的功能。
1 先去网上查一下系统自带方法 很多人都说的是下面这两个方法
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord error:nil]; // 听筒
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil]; // 外放
然而这两个方法在环信里面却是外放的时候 视频通话这边的语音传不过去,具体原因就不知道了
我还是怀疑方法系统开播放器的方法是否用错了 果然在一篇技术文章里发现了下面的方法
正解如下
[[AVAudioSession sharedInstance]overrideOutputAudioPort:AVAudioSessionPortOverrideNone error:nil]; // 听筒
[[AVAudioSession sharedInstance]overrideOutputAudioPort:AVAudioSessionPortOverrideSpeaker error:nil]; //外放