微信小程序背景音乐的播放以及问题的解决

Posted 李爽224331

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信小程序背景音乐的播放以及问题的解决相关的知识,希望对你有一定的参考价值。

微信小程序背景音乐的播放有自己自定义的api,并不推荐使用audio,audio加载时间长,体验不好,推荐使用wx.getBackgroundAudioManager()

//定义背景音乐

const bgMusic = wx.getBackgroundAudioManager() //创建背景音乐

page({

data:{

src:‘ ‘

},

 

onLoad:function(){

  this.ceshi()

},

ceshi:function(){

  //这里 需要从接口获得背景音乐的路劲,我这里就随便写个假的了

  wx.request({

    url:‘ ‘,

    dataP:{},

    methos:‘‘,

    success:function(res){    

      this.setData({

        src:src

      })    

      this.listenerButtonPlay()    //成功获得音乐路径后调用监听方法,以便 后续需要

    }

  })

  },

 

 
listenerButtonPlay: function () {
  var that = this
  var src = that.data.src
  console.log(src)
  // bgMusic.title = ‘333‘;   //必须设置title,否则会报错
  //bgMusic.src = src;  //如果需要页面加载完成自动播放背景音乐,解除注释,背景音乐默认赋值上src后就自动播放
  bgMusic.onTimeUpdate(() => { //监听音频播放进度
    //console.log(bgMusic.currentTime)
  })
  bgMusic.onEnded(() => { //监听音乐自然播放结束
    console.log("音乐播放结束");
    // that.listenerButtonPlay(src)    //r如果需要音乐结束后继续循环播放,解除注释
  })
  bgMusic.pause(); //播放音乐
},
//停止播放
listenerButtonStop: function () {
  bgMusic.stop()
},
 
//有时我们并不需要自动播放背景音乐,需要手动控制,随便加个点击事件
autoMusic: function (e) {
  var that = this;
  that.setData({
    auto: !that.data.auto
  });
  if (that.data.auto) {
    bgMusic.title = that.data.src      //这个地方必须放在判断里,放在外边你会发现你暂停音乐暂停不了
    bgMusic.src = that.data.src
    bgMusic.play();
    console.log("播放")
  } else {
    bgMusic.pause();
    console.log("暂停")
  }
},

})

 

此次使用问题汇总

背景音乐必须设置title,

赋值src会自动播放,

播放暂停如果方法是同一个赋值src必须放在播放判断里面

 

 

 

以上是关于微信小程序背景音乐的播放以及问题的解决的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序音乐播放器,leancloud后端支持,体验小程序数据绑定,Promise较为优雅解决回调

微信小程序—添加背景音乐

微信小程序后台没有背景音乐功能怎么办

微信小程序 写音乐播放器 slider组件 将value设置为0 真机测试滑块不能回到起点

解决微信小程序通过img标签加载GIF只能播放一次问题

微信小程序播放背景音乐