uniapp:钉钉小程序需要录音权限及调用录音

bash 复制代码
{
    // ... 其他配置项
    "mp-dingtalk": {
        "permission": {
             "scope.userLocation" : {
                "desc" : "系统希望获得您的定位用于确认您周围的设施数据"
            },
            "scope.bluetooth" : {
                "desc" : "你的蓝牙权限将用于小程序搜索打印机、连接打印机、打印相关功能"
            },
			"microphone" : {
			    "desc" : "录音功能需要麦克风权限"
			}
            // ... 其他权限配置
        }
        // ... 其他dring配置
    }
    // ... 其他配置项
}
TypeScript 复制代码
mounted() {
	if (dd.canIUse('getRecorderManager')) { // 端上支持
		this.recorderManager = dd.getRecorderManager()
	} else { // 端上不支持
		dd.alert({
			content: '请升级钉钉版本至7.0.10以支持录音功能'
		})
	}
	this.audioManager = uni.getBackgroundAudioManager();
},
TypeScript 复制代码
const recorderManager = uni.getRecorderManager();
 
recorderManager.start({
    duration: 60000, // 录音的最大时长,单位 ms
    sampleRate: 16000, // 采样率
    numberOfChannels: 1, // 录音通道数
    encodeBitRate: 96000, // 编码码率
    format: 'aac' // 音频格式,只在mp3格式下有效,是否调用getFrameBuffer
});
 
############### 编译钉钉会找不到对应方法 #####################

recorderManager.onStart(() => {
    console.log('录音开始');
});
 
recorderManager.onStop((res) => {
    console.log('录音结束', res);
    const { tempFilePath } = res;
    // 处理录音文件...
});

recorderManager.onError((error) => {
    console.error('录音错误', error);
});
 
############### 编译钉钉会找不到对应方法 #####################

 
############### 调用正确 #####################

recorderManager.onstart = (res) => {
    console.log('录音开始');
}
 
recorderManager.onstop = (res) => {
    console.log('录音结束', res);
    const { tempFilePath } = res;
    // 处理录音文件...
}

recorderManager.onerror = (err) => {
    console.error('录音错误', err);
};
 
############### 调用正确 #####################
 
// 停止录音
recorderManager.stop();

由于在uniapp中使用长按事件,编译钉钉小程序后无效,所以只能使用click事件声明一个字段来判断长按松开~~~~

如果过程中,录音之后无响应,使用onerror打印错误:

一般是遇到文件无法保存的问题,直接真机测试就没有问题了~~~

相关推荐
DK1858383225210 小时前
【源码开源部署】电竞代练护航陪玩小程序:全游戏服务平台完整解决方案(附宝塔部署教程)
游戏·微信小程序·uni-app·开源·php
码云数智-大飞11 小时前
2026 年跨端开发决战:小程序原生 vs uni-app vs Taro 深度对比
小程序·uni-app·taro
paopao_djshddhdj13 小时前
钉钉斗拱云深度解析:从核心能力到落地实践
钉钉
河北清兮网络科技16 小时前
直播APP开发怎么选?流媒体高端定制架构解析,避开模板与外包技术坑
小程序·架构·app·短剧·短剧app·广告联盟
BS30813_vx17 小时前
基于 Express + uni-app 的养老院管理系统设计与实现
后端·uni-app·express
paopao_djshddhdj17 小时前
钉钉私有化部署与混合云部署全解析:适用企业、架构方案与选型指南
架构·钉钉
上单带刀不带妹18 小时前
小程序图片缓存问题:时间戳和版本号解决图片不更新
缓存·小程序·vue·uniapp
bug总结19 小时前
uniapp 微信小程序请求规范
微信小程序·小程序·uni-app
微三云 - 廖会灵 (私域系统开发)20 小时前
垂直行业 SaaS 实践|AI 美业小程序,构建美业服务全链路数字化闭环
人工智能·小程序