更新记录
1.0.0(2026-03-05)
- 支持音频输出通道监听与控制(听筒/外放)
- 支持音频播放状态监听(中断/恢复)
- 兼容 Android 与 iOS
平台兼容性
uni-app(5.01)
| Vue2 |
Vue3 |
Chrome |
Safari |
app-vue |
app-nvue |
Android |
Android插件版本 |
iOS |
iOS插件版本 |
鸿蒙 |
| - |
- |
- |
- |
- |
√ |
4.4 |
1.0.0 |
12 |
1.0.0 |
- |
| 微信小程序 |
支付宝小程序 |
抖音小程序 |
百度小程序 |
快手小程序 |
京东小程序 |
鸿蒙元服务 |
QQ小程序 |
飞书小程序 |
小红书小程序 |
快应用-华为 |
快应用-联盟 |
| - |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
uni-app x(5.01)
| Chrome |
Safari |
Android |
iOS |
鸿蒙 |
微信小程序 |
| - |
- |
- |
- |
- |
- |
hl-audio-monitor
音频状态监控插件,支持监听音频播放状态变化(如被中断、恢复)以及音频输出通道(听筒、扬声器、耳机、蓝牙)的切换。
快速上手
1. 引入插件
import * as audioMonitor from '@/uni_modules/hl-audio-monitor';
2. 初始化与监听
// 在页面加载时初始化
onMounted(() => {
// 初始化监控环境
audioMonitor.initMonitor();
// 监听输出通道变更(0:未知, 1:听筒, 2:扬声器, 3:耳机, 4:蓝牙)
audioMonitor.startRouteMonitor((route) => {
console.log('当前音频通道:', route);
});
// 监听播放状态(0:空闲, 1:播放中, 2:暂停, 3:被中断)
audioMonitor.startPlayStateMonitor((state) => {
console.log('当前播放状态:', state);
});
});
// 在页面卸载时清理
onUnmounted(() => {
audioMonitor.stopRouteMonitor();
audioMonitor.stopPlayStateMonitor();
audioMonitor.destroyMonitor();
});
3. 切换音频通道
// 切换到听筒
audioMonitor.setAudioRoute(1);
// 切换到扬声器
audioMonitor.setAudioRoute(2);
// 切换到耳机(需物理连接)
audioMonitor.setAudioRoute(3);
// 切换到蓝牙(需已连接)
audioMonitor.setAudioRoute(4);
// 获取当前通道
const currentRoute = audioMonitor.getAudioRoute();
API 说明
| 方法名 |
说明 |
| initMonitor() |
初始化监控模块 |
| destroyMonitor() |
销毁监控模块 |
| setAudioRoute(route) |
强制切换音频输出通道 |
| getAudioRoute() |
获取当前音频输出通道 |
| startRouteMonitor(callback) |
开始监听输出通道变化 |
| stopRouteMonitor() |
停止监听输出通道变化 |
| startPlayStateMonitor(callback) |
开始监听音频播放状态(中断等) |
| stopPlayStateMonitor() |
停止监听音频播放状态 |