iOS静音模式下应用无音频输出,如何在audio_service包设置对应音频会话类别?
audio_service设置iOS音频会话类别方法
问题
iOS设备处于静音模式时,应用播放的声音会被静音,音乐类应用需将音频会话类别设置为playback才能规避该问题。
适用版本
audio_service 0.18.0-beta.1
操作步骤
- 在初始化
audio_service时,在AudioServiceConfig的iosConfig参数中指定音频会话类别,参考代码如下:
await AudioService.init( config: AudioServiceConfig( // 此处填写你的Android端配置,如通知渠道ID、名称等 androidNotificationChannelId: '你的应用音频渠道ID', androidNotificationChannelName: '音乐播放', // iOS端专属配置 iosConfig: AudioServiceIosConfig( audioSessionCategory: AVAudioSessionCategory.playback, // 按需添加类别选项,比如是否允许和其他应用音频同时播放 audioSessionCategoryOptions: AVAudioSessionCategoryOptions.mixWithOthers, ), ), // 此处传入你实现的AudioHandler实例 callback: MyAudioHandler(), );
- 若需要后台播放能力,需额外在Xcode项目的「Signing & Capabilities」标签页开启Background Modes,勾选「Audio, AirPlay, and Picture in Picture」选项。
注意事项
- 配置完成后会自动忽略iOS设备的静音开关,保证音频正常播放,符合音乐类应用的使用要求。
- 若配置不生效,检查是否有其他音频插件修改了全局AVAudioSession配置,优先级更高的配置会覆盖当前设置。
内容的提问来源于stack exchange,提问作者Survy
相关产品推荐
相关产品推荐

