js
/**
* 微信小程序背景音乐实现
*/
const bgMusic = wx.getBackgroundAudioManager() //创建背景音乐
Page({
data: {
// id: '',//请求数据参数id
musicMsg: "",//接收数据对象
},
onLoad: function (options) {
var that = this
that.getPicInfo() //请求服务器
},
// 开始播放
listenerButtonPlay: function (src) {
var that = this
console.log(src)
bgMusic.src = src;
bgMusic.title="bj",//此处要设置title,否则会报错
bgMusic.onTimeUpdate(() => { //监听音频播放进度
console.log(bgMusic.currentTime)
})
bgMusic.onEnded(() => { //监听音乐自然播放结束
console.log("音乐播放结束");
that.listenerButtonPlay(that.data.musicMsg)
})
bgMusic.play(); //播放音乐
},
getPicInfo() {
var that = this
var server="http://127.0.0.1:8080";
wx.request({
url: 'http://192.168.0.104:8080/bgm/list',
//http://127.0.0.1:8080/bgm/快乐.mp3
header: {
'content-type': 'application/json'
},
method: 'POST',
success: function (res) {
console.log(res.data.data[0].path)
var path= res.data.data[0].path;
console.log(server+path)
that.listenerButtonPlay(server+path) //成功回调执行播放音乐
that.setData({
musicMsg: server+path, //赋值对象
})
}
})
},
onUnload() {
var that = this
that.listenerButtonStop()//页面卸载时停止播放
console.log("离开")
},
//暂停
audioPause: function () {
var that = this
bgMusic.pause(); //暂停播放音乐
console.log('暂停')
},
audioPlay: function () {
var that = this
bgMusic.play(); //停止播放
console.log('继续播放')
},
//停止播放
listenerButtonStop: function () {
bgMusic.stop()
},
})
app.json 中需要注册 “requiredBackgroundModes”:[“audio”],