我正在尝试将iOS 9 和 8 的媒体播放与 VoIP 功能(通过Twilio
)结合起来。当音频流在后台播放时,我连接或断开语音会议会话,这会导致音量从值 X 跳到值 Y . 这种跳跃可以被听到,也可以通过[AVAudioSession sharedInstance].outputVolume值的变化来观察。
我想防止这种跳跃并将音量保持在恒定水平,除非用户手动决定更改它。
进一步的调查表明,虽然 AVAudioSession 的类别设置为AVAudioSessionCategoryPlayAndRecord,[[AVAudioSession sharedInstance] setMode:AVAudioSessionModeDefault error:&error]
但在模式之间切换[[AVAudioSession sharedInstance] setMode:AVAudioSessionModeVoiceChat error:&error]
会导致应用程序分别在两个完全独立的音量范围内运行。
即,存在“默认”模式的音量和“语音聊天”模式的完全不相关的音量。
AVAudioSession 的文档似乎省略了与模式/类别开关相关的音量的任何提及,我在互联网上找不到任何相关内容......
感谢任何帮助。