uniapp 自动播放背景音乐

1.引入wx js-sdk的js文件

import wxj from "@/static/js/jweixin-1.6.0.js" //这是wx js-sdk的js文件

2.js调用播放事件,自动播放音乐

let that = this;
function autoPlayAudio() {
    wxj.config({
        // 配置信息, 即使不正确也能使用 wx.ready
        debug: false,
        appId: "",
        timestamp: 1,
        nonceStr: "",
        signature: "",
        jsApiList: []
    });
    wxj.ready(function() {
        that.$util.playAudioBg(that.$common.musicsrc.bg)
    });
};
autoPlayAudio();

3.util里的playAudioBg方法为

/**播放背景音乐
 * @param {Object} src
 */
function playAudioBg(src) {
    console.log(common.bgmusic);
    if(!common.isplaymusic || src == common.bgmusic.src){
        return false
    }
    if(common.bgmusic){//ios清空播放
        common.bgmusic.destroy();
    }
    common.bgmusic = uni.createInnerAudioContext(); //创建播放器对象
    common.bgmusic.autoplay = true; //自动播放
    common.bgmusic.loop = true;
    if (src) {
        common.bgmusic.src = src; //选择播放的音频
    }
    common.bgmusic.play(); //执行播放
    common.bgmusic.onPlay(() => {
    });
    common.bgmusic.onError((res) => {
        common.bgmusic.seek(0)
        common.bgmusic.play()
    });
}

4.common里的变量为

// 音乐地址
let musicsrc = {
    bg:'../../static/audio/C400002hreIt1JfaDc.mp4',//背景音乐
}
let bgmusic  = '';
let audioPlayer = '';
let isplaymusic  = true;

export default {
    musicsrc,
    bgmusic,
    audioPlayer,
    isplaymusic
}
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐