如果你也对鸿蒙开发感兴趣,加入“Harmony自习室”吧!扫描下方名片,关注公众号,公众号更新更快,同时也有更多学习资料和技术讨论群。

1、音频输出设备管理
有时设备同时连接多个音频输出设备,需要指定音频输出设备进行音频播放,此时需要使用AudioRoutingManager接口进行输出设备的管理。
👉🏻 创建一个AudioRoutingManager
在使用AudioRoutingManager管理音频设备前,需要先导入模块并创建实例。代码如下:
import audio from '@ohos.multimedia.audio'; // 导入audio模块let audioManager = audio.getAudioManager(); // 需要先创建AudioManager实例let audioRoutingManager = audioManager.getRoutingManager(); // 再调用AudioManager的方法创建AudioRoutingManager实例
目前支持的音频输出设备分别有:
-
-
EARPIECE:听筒,枚举值为1
-
SPEAKER:扬声器,枚举值为2
-
WIRED_HEADSET:有线耳机(有麦克风),枚举值为3
-
WIRED_HEADPHONES:有线耳机(无麦克风),枚举值为4
-
BLUETOOTH_SCO:蓝牙设备SCO连接,值为7
-
BLUETOOTH_A2DP:蓝牙设备A2DP连接,值为8
-
USB_HEADSET:USB耳机,带麦克风,值为22
-
👉🏻 获取输出设备信息
使用getDevices()方法可以获取当前所有输出设备的信息。
audioRoutingManager.getDevices(audio.DeviceFlag.OUTPUT_DEVICES_FLAG).then((data) => {console.info('Promise returned to indicate that the device list is obtained.');});
👉🏻 监听设备连接状态变化
可以设置监听事件来监听设备连接状态的变化,当有设备连接或断开时触发回调:
// 监听音频设备状态变化audioRoutingManager.on('deviceChange', audio.DeviceFlag.OUTPUT_DEVICES_FLAG, (deviceChanged) => {console.info('device change type : ' + deviceChanged.type); // 设备连接状态变化,0为连接,1为断开连接<

最低0.47元/天 解锁文章
1915

被折叠的 条评论
为什么被折叠?



