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

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

相关推荐
小糊涂加油5 小时前
原生微信小程序开发踩坑记录
微信小程序·小程序
笨笨狗吞噬者6 小时前
记录一个uniapp小程序端编译时问题
前端·微信小程序·uni-app
干到60岁退休的码农1 天前
微信小程序 按钮点击事件
微信小程序·小程序
会一丢丢蝶泳的咻狗1 天前
uni-app安卓端强制更新apk包
android·前端·uni-app
no_work1 天前
基于CNN深度学习的小程序识别-视频介绍下自取
深度学习·小程序·cnn
大磕学家ZYX1 天前
使用Nodejs尝试小程序后端服务编写:简单的待办事项管理demo
开发语言·javascript·小程序·node.js
iOS阿玮1 天前
苹果审核被拒,其实可以靠回复也能过审
uni-app·app·apple
低代码布道师2 天前
模块拆解:一览家政维修小程序的“功能蓝图”
低代码·小程序·云开发
程序员小刘2 天前
HarmonyOS 5中UniApp的调试步骤
华为·uni-app·harmonyos
饭啦啦2 天前
uniapp音乐播放createInnerAudioContext
uni-app