处理小程序录音功能的时候 使用 长按事件 bindlongpress 先录音授权,成功在录音。我在开发者工具上没事,在真机上面出现两次授权框。
经过我测试 ,我发现 bindlongpress 事件绑定授权 ,只要我执行点击的操作 也能出现授权框(一次)。执行长按的操作 就两次授权框。想问下这个问题 怎么解决。
附事件代码
handleLongPress:function (e) {
console.log('changan',e);
//this.startPoint = e.touches[0]
this.setData({startPoint:e.touches[0]})
if (e.target.id === 'record') {
//this.title = '正在录音'
//this.isRecording = true
this.startRecording()
//this.canSend = true
}
},
startRecording:function () {
wx.getSetting({
success: (res) => {
console.log('getsetting',res);
let auth = res.authSetting['scope.record']
if (auth === false) { // 已申请过授权,但是用户拒绝
console.log('已申请过授权,但是用户拒绝');
} else if (auth === true) { // 用户已经同意授权
console.log('用户已经同意授权');
this.setData({
title:'正在录音',
isRecording:true,
canSend:true,
})
//this.isRecording = true
this.setData({isRecording:true})
recorderManager.start(recordOptions)
} else { // 第一次进来,未发起授权
console.log('第一次进来,未发起授权');
wx.authorize({
scope: 'scope.record',
success: () => {
wx.showToast({
title: '授权成功',
icon: 'success',
duration: 1500
})
}
})
}
},
fail: function () {
wx.showToast({
title: '授权失败',
icon: 'none',
duration: 1500
})
}
})
},
你好,麻烦具体描述问题流程,提供出现问题的具体机型、微信版本号、系统版本号,以及能复现问题的代码片段https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html