收藏
回答

recorderManager Ios上不能触发onstop,onStart事件

问题模块
客户端



使用 recorderManager 在Android机上面没问题,可以正常录音播放,

在ios无法录音;

在开发者环境上也是可以的

最后一次编辑于  2017-11-30  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

7 个回答

  • 韬々
    韬々
    2017-11-30

    你好,请提供一下出现问题的机型和微信版本和appid,以及能复现问题的简单代码示例。

    2017-11-30
    赞同
    回复
  • 好腻诺
    好腻诺
    2018-03-23

    对哦 是吧aac改成MP3,太久了忘记怎么解决的了


    2018-03-23
    赞同
    回复
  • 互扯程序
    互扯程序
    2018-03-22

    升级也不行。必须改成mp3才行。aac是不行的

    2018-03-22
    赞同
    回复
  • 好腻诺
    好腻诺
    2018-03-22

    你的微信版本多少,后来微信升级了,就可以用了

    2018-03-22
    赞同
    回复
  • 互扯程序
    互扯程序
    2018-03-17

    我也遇到了相同的问题。目测, recorderManager.start(parse); 根本就没有启动成功,所以没有触发onstop,和onstart事件。

    andriod,和开发者环境上都没有问题,在iPhone上才有问题,我的是7 plus


    2018-03-17
    赞同
    回复
  • 好腻诺
    好腻诺
    2017-12-01

    @官方,我问题描述已经给了,代码也贴上去了,这个是bug吗,希望回复一下

    2017-12-01
    赞同
    回复
  • 好腻诺
    好腻诺
    2017-11-30

    机型: iphone6 plus  微信版本6.5.22

    appid:  wxce452b009d838629

    代码:


        const recorderManager = wx.getRecorderManager();// 录音管理

      

        

        

    recorderStart: function(){

            var that = this;

            const parse = {

                duration: 600000,

                sampleRate: 24000,

                numberOfChannels: 1,

                encodeBitRate: 128000,

                format: 'aac',

                frameSize: 5,

            }

            recorderManager.start(parse);

            recorderManager.onStart(() => {

            

              console.log('recorder start')


            })

            that.recorderJishi();

        },

        recorderPause: function(e){

            recorderManager.pause()

        },

        recorderResume: function(e){

            recorderManager.resume()

        },

        recorderStop: function(e){

            var that = this;

            recorderManager.stop();

            recorderManager.onStop((res) => {

                console.log('recorder stop', res)

                var action = that.data.action;

                action.audio_path = res.tempFilePath;

                action.time = parseInt(res.duration/1000);//录音时长

                action.min = parseInt(action.time/60);

                action.second = parseInt(action.time%60);

                action.recording = 0;

                action.recorder_sure = 1;

     

               

            })

        },


    2017-11-30
    赞同
    回复