小程序录音
发布于 5 年前 作者 tianping 15760 次浏览 来自 问答

小程序录音功能,能不能暴露获取录音权限成功的接口

在做按住录音的功能时,(touchstart开始录音,touchend结束录音)

首次使用小程序时需要授权,授权成功后才开始录音,但这时候已经出发touchend事件 导致无法结束录音

5 回复

https://mp.weixin.qq.com/debug/wxadoc/dev/api/media-record.html#wxstartrecord

留意一下文档最下面有提到:wx.startRecord 接口需要用户授权,请兼容用户拒绝授权的场景

如果用户拒绝授权,那么 startRecord 方法的 fail 回调将被执行。因此可以在这里加入你需要的处理逻辑

  1. 判断当前是不是 第一次调用录音这个功能

  2. 如果是第一次调用,可以使用 setInterval 在这里 调用 wx.stopRecord();

  3. 在 语音调用 complete, 函数里面 清除 setInterval

if (!hasRecord) {

      wx.startRecord({

        success: function (res) {

 

        },

        complete : function (){

          clearInterval(recordSetInter);

          wx.hideToast();

        }

      })

      console.log('语音权限 ', hasRecord);

      recordSetInter = setInterval(function (){

        wx.stopRecord();

      },500);

  

      hasRecord = true;

    }

我也遇到这个问题,请问解决了么☹️

麻烦看下我的问题 这种情况下 是不会走到fail中的

或者有没有其他方案能解决这个问题

回到顶部