问题描述
目前,当我调用并尝试使用 UI 元素更改音量时,我只看到 UI 更改、音量滑块更改,但未看到设备音量。音量是静态的。 对于音量改变,我使用 MPVolumeView
static func adjustCurrentVolume(_ volume: Float) {
let volumeView = MPVolumeView()
guard let slider = volumeView.subviews.first(where: { $0 is UiSlider }) as? UiSlider else { return }
if volume > maximumVolume {
currentVolume = maximumVolume
} else if volume < minimumVolume {
currentVolume = minimumVolume
} else {
currentVolume = volume
}
dispatchQueue.main.asyncAfter(deadline: .Now() + 0.1) {
slider.value = currentVolume
}
}
对于呼叫:SinchRTC 和 CallKit。 通话中的 AudioSession 属于 PlayAndRecord 类别和 VoiceChat 模式。
解决方法
看MPVolumeview的开发者参考,有没有试过用按钮设置音频输出路径。如果添加按钮,是否可以按预期设置音频输出路由并控制音量?
https://developer.apple.com/documentation/mediaplayer/mpvolumeview