HarmonyOS鸿蒙Next中Interface (AudioSessionManager)文档示例代码不规范无效果

HarmonyOS鸿蒙Next中Interface (AudioSessionManager)文档示例代码不规范无效果 [文档链接]: https://developer.huawei.com/consumer/cn/doc/harmonyos-references/arkts-apis-audio-audiosessionmanager

[原文内容]: selectMediaInputDevice(inputAudioDevice: AudioDeviceDescriptor): Promise<void>

[问题描述]: 示例代码不规范 无效果

[问题现象]: selectMediaInputDevice接口的作用的是设置输入设备, 但是示例代码中却是获取输出设备, 并传入了接口, 示例代码无用

cke_1319.png


更多关于HarmonyOS鸿蒙Next中Interface (AudioSessionManager)文档示例代码不规范无效果的实战教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

尊敬的开发者,您好!感谢您的反馈,问题正在加速处理中,还请关注后续版本,感谢您的理解与支持。

更多关于HarmonyOS鸿蒙Next中Interface (AudioSessionManager)文档示例代码不规范无效果的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


这个反馈成立。selectMediaInputDevice(inputAudioDevice) 的入参应该是待选择的输入设备描述;示例如果先获取输出设备再传入,就和“设置媒体输入设备”的接口语义不一致,复制后也难以生效。

建议示例改为通过 AudioRoutingManager.getDevices(DeviceFlag.INPUT_DEVICES_FLAG) 或 getAvailableDevices(DeviceUsage.MEDIA_INPUT_DEVICES) 获取输入设备,再把用户选择的 AudioDeviceDescriptor 传给 selectMediaInputDevice();输出设备示例应放到输出设备选择接口下。

HarmonyOS NEXT 中 AudioSessionManager 文档示例代码无效,通常因 API 版本与文档未同步,或示例缺少 @ohos.multimedia.audio 权限声明、未正确处理 audioRenderer 创建与释放。建议直接参照最新 SDK 的 api/ 目录下 audio.d.ts 类型定义核对接口签名及参数,确保 sessionId 合法且 sessionCallback 实现完整。

文档示例中 selectMediaInputDevice 的调用代码确实存在错误。该接口的作用是选择媒体输入设备,但示例却使用了 getDevices(DeviceFlag.OUTPUT_DEVICES_FLAG) 获取输出设备列表,并将输出设备作为参数传入,导致无法生效。

正确做法应使用 DeviceFlag.INPUT_DEVICES_FLAG 获取输入设备,再从中选取目标设备传入。示例中的变量命名 outputDevices 也容易误导,应改为 inputDevices。修正后接口可正常指定录音或通话场景的音频输入设备。

回到顶部