微信小程序背景音樂的播放以及問題的解決


微信小程序背景音樂的播放有自己自定義的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必須放在播放判斷里面

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM