gpt4 book ai didi

ios - iOS音量仅在播放时可调

转载 作者:行者123 更新时间:2023-12-03 01:36:54 27 4
gpt4 key购买 nike

开发一个iOS应用,该应用可以分段播放音频消息(而不是连续播放)。打开应用程序时,我使用以下选项初始化音频 session 。

func _initAudioSesh() {
let audioSession = AVAudioSession.sharedInstance()
do {
if #available(iOS 10.0, *) {
try audioSession.setCategory(
AVAudioSessionCategoryPlayAndRecord,
mode: AVAudioSessionModeVoiceChat,
options: [
AVAudioSessionCategoryOptions.defaultToSpeaker,
AVAudioSessionCategoryOptions.allowBluetooth,
AVAudioSessionCategoryOptions.allowBluetoothA2DP
]
)
} else {
try audioSession.setCategory(AVAudioSessionCategoryPlayAndRecord)
}
} catch {
print("Setting category to AVAudioSessionCategoryPlayback failed.")
}
}

然后,当准备播放音频时,我使用setActive(true)捕获焦点,并使用setActive(false)释放焦点

我遇到的问题是,在应用程序中,硬件音量按钮仅在播放音频时起作用,否则,按钮不起作用。我总是可以通过持有setActive(true)来解决这个问题,但是这种黑客很难看,并且会引起其他问题。是否还有其他人遇到过音量按钮无法在应用程序内正常工作/无法进行调整的情况,只有在正在播放音频时才能正常工作?

离开应用程序后,音频调整就会生效,一旦将其重新聚焦,它将停止工作,除非我开始播放音频。
我尝试弄乱创建音频 session 的方式和时间,但没有成功。

最佳答案

这最终是由于我们正在使用的特定库(react-native-system-settings)而导致的,该库现已被修补。如果其他用户遇到问题,则解决方法似乎是允许UI在VolumeView中显示。否则,它不允许硬件按钮影响音量。

关于ios - iOS音量仅在播放时可调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52061078/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com