uniapp 录音授权,用户拒绝之后重新调用

判断是否开启录音权限是否开启没有开启则提示用户前去开启权限

//这个是写在点击事件里面的
let that = this
uni.authorize({
	scope: 'scope.record',//这里选择scope.(录音、位置、用户信息...都可以)
	success() { //1.1 允许授权
		that.timer = setInterval(that.startTimer, 1000),//录音定时器
		recorderManager.start()//开始录音
	},
	fail() { // 拒绝授权
		uni.showModal({
		    content: '检测到您没打开录音功能权限,是否去设置打开?',
			confirmText: "确认",
			cancelText: '取消',
			success: (res) => {
				if (res.confirm) {
					uni.openSetting({//opensetting是调起设置页面的
						success: (res) => {
							console.log(res.authSetting);
								if(res.authSetting == true){//判断res.authsetting的值是true还是false
									that.timer = setInterval(that.startTimer,1000),
							               recorderManager.start()
								}else{
									console.log("什么也不做");
									}	
								}
							})
					} else {
						console.log('取消');
						return false;
					}
				}
			})
			return false;
		}
	})

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
UniApp 是一款基于 Vue.js 的跨平台框架,用于快速构建原生应用,包括iOS、Android、Web、H5等。如果你想在 UniApp 中实现录音功能的Demo,你可以按照以下步骤进行: 1. **引入依赖**:在项目中使用 UniApp 提供的`uni-app-plus/audio`模块,该模块包含录音和播放的功能。 ```javascript import { uniAppPlus } from '@dcloudio/uni-app-plus'; uniAppPlus.useAudio(); ``` 2. **请求录音权限**:在使用录音功能前,需要先检查设备是否支持录音并请求权限。 ```javascript uni.requestPermissions({ permissions: ['audio'], success: () => { // 用户同意,继续录音 }, fail: (res) => { console.error('录音权限拒绝', res); }, }); ``` 3. **开始录音**:使用`startRecord`方法启动录音,提供一个回调来处理录音数据。 ```javascript uniAppPlus.startRecord({ success: (recordingData) => { // 录音数据已生成,你可以将它存储或发送 console.log('录音数据:', recordingData); }, error: (err) => { console.error('录音失败', err); }, }); ``` 4. **暂停/停止录音**:使用`pauseRecord`和`stopRecord`方法控制录音。 5. **停止后处理**:在`stopRecord`回调中,记得调用`uniAppPlus.stopRecord()`停止录音,并可能需要调用`uniAppPlus.getRecordingDuration()`获取录音长度,然后决定下一步操作。 ```javascript uniAppPlus.stopRecord().then(() => { const duration = uniAppPlus.getRecordingDuration(); // 处理停止录音后的逻辑,如保存录音文件等 }); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值