uniapp 的uni.getRecorderManager() 录音功能小记

官网上明确说的是全局唯一并且只是获取对象,所以会导致一个问题就是,当你多个页面要用到这个对象的时候,会发现 onStop 方法会被覆盖,导致调用结果不是自己想要的

解决办法也简单粗暴,在需要用到的界面重新覆盖onStop 方法就好,我是放在了 onShow 方法里

javascript 复制代码
		onShow() {
			this.recorderManager = uni.getRecorderManager();
			//监听录音开始事件
			this.recorderManager.onStart(() => {
				console.log('录音开始');
				this.isRecording = true;
				this.startvoice = true;
				// 开启定时器来记录录音时长
				this.timer = setInterval(() => {
					if (this.recordTime >= 30) {
						// 如果达到30秒,停止录音
						this.stopRecord();
					} else {
						this.recordTime++;
					}
				}, 1000);
			});
			//监听录音结束事件
			this.recorderManager.onStop((res) => {
				console.log('录音结束', res);
				this.isRecording = false;
				this.startvoice = false;
				clearInterval(this.timer);
				this.recordTime = 0;
				this.audioFilePath = res.tempFilePath;
				this.uploadAudioFile();
			});
		},
相关推荐
启山智软7 小时前
前沿主流技术栈商城系统(Java JDK21 + Vue3 + Uniapp)
java·开发语言·uni-app
WeirdOwl9 小时前
uniapp 嵌入外部h5 报错/收不到消息
uni-app
敲代码的鱼哇2 天前
发送短信/拨打电话/获取联系人能力 UTS 插件(cz-sms)
android·前端·ios·uni-app·安卓·harmonyos·鸿蒙
MY_TEUCK3 天前
【AI开发】从0到1写一个uni-app Vue3 小程序开发的Skill:用法、流程与踩坑复盘
人工智能·uni-app
雪芽蓝域zzs3 天前
uni-app x uts类转换
uni-app
游戏开发爱好者83 天前
深入理解iOSTime Profiler:提升iOS应用性能的关键工具
android·ios·小程序·https·uni-app·iphone·webview
gskyi3 天前
UniApp Vue3 数据透传终极指南
javascript·vue.js·uni-app
gskyi3 天前
uni-app 高阶实战:onLoad与getCurrentPages深度技巧
前端·javascript·vue.js·uni-app
阿奇__4 天前
uniapp支付宝 H5 开发踩坑,hash模式下取参要规范!
开发语言·uni-app
云起SAAS4 天前
小智笔记APP源码 | 8大广告联盟聚合(穿山甲/优量汇/快手/百度) | 应用市场过审极速版 | uni-app全栈商用项目
笔记·uni-app·广告联盟·笔记app