You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Flutter或原生开发实现Android/iOS扬声器与蓝牙耳机同时播放音频

音频同时输出到扬声器与蓝牙耳机的实现方案

以下为Android、iOS原生及Flutter开发场景下的实现可行性说明:

原生开发实现逻辑

Android 平台

  • 仅 Android 10(API 等级29)及以上版本 支持通用多音频路由输出能力,低于该版本的系统无官方公开的实现方案,仅部分厂商定制ROM可能存在私有支持。
  • 实现步骤:
    1. 申请MODIFY_AUDIO_ROUTING权限
    2. 通过AudioManager枚举当前已连接的音频输出设备,分别获取扬声器、蓝牙耳机对应的AudioDeviceInfo实例
    3. 创建两个独立的音频播放轨道,调用setPreferredDeviceForTrack方法分别为两个轨道绑定不同的输出设备
    4. 同步两个音频轨道的播放进度,即可实现同时输出

iOS 平台

  • iOS系统的AVAudioSession音频会话框架存在系统级限制,同一时间仅允许激活一个音频输出路由,没有公开API支持同时输出到扬声器和蓝牙耳机。
  • 若使用未公开的私有API实现该功能,会导致App Store审核被拒,无法正常上架,因此不建议尝试。

Flutter 开发实现逻辑

  • 你当前使用的flutter_audio_manager库仅支持单音频路由切换,无法满足双设备同时输出需求。
  • Android场景下可通过MethodChannel自行桥接上述原生多路由输出逻辑,即可实现需求。
  • iOS场景下受系统限制,无合规实现方案,建议针对iOS用户仅保留单设备输出切换能力。

内容的提问来源于stack exchange,提问作者Mafaza Chabane

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 00:39:03