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打印错误:

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

相关推荐
CHB4 小时前
uni-app,你的最佳vibe coding搭子
uni-app·vibecoding
说私域5 小时前
基于开源AI智能名片链动2+1模式S2B2C商城小程序的社群初期运营策略研究
人工智能·小程序
计算机毕设指导66 小时前
基于微信小程序的校园物品租赁与二手交易系统【源码文末联系】
spring boot·mysql·微信小程序·小程序·tomcat·maven·intellij-idea
科技小金龙6 小时前
小程序/APP接入分账系统:4大核心注意事项,避开合规与技术坑
大数据·人工智能·小程序
说私域6 小时前
开源AI智能名片链动2+1模式商城小程序的“展现”策略研究
人工智能·小程序
计算机毕设指导67 小时前
基于微信小程序的水上警务通系统【源码文末联系】
java·spring boot·mysql·微信小程序·小程序·tomcat·maven
怀君7 小时前
Uniapp——Android离线打包自定义基座教程
android·uni-app
星哥说事9 小时前
告警通知方式:邮件、短信、Slack、钉钉等告警通知方式的配置
数据库·钉钉
颹蕭蕭10 小时前
钉钉占用C盘空间太大怎么办?
钉钉·c盘