小程序音频播放相关
let innerAudioContext = null
let backgroundAudioManager = null
let isPlay = false
page之上定义,不用随时setData会有延迟。注意:页面上用到的要在data里面写,不在页面上展示js直接用的可以在上面定义全局
判断是否支持基础库
isCanUseBgAudio = wx.canIUse('getBackgroundAudioManager')
需要兼容不支持的基础库使用-createInnerAudioContext(不支持播放速度)
背景悬浮框直接使用- getBackgroundAudioManager(支持播放速度)
<view class="slider"><slider bindchange="sliderChange" bindchanging="sliderChange" value="{{sliderValue}}" min="0" max="{{maxSliderValue}}" block-size="12"/>
</view><span bind:tap="prePlay">上一段</span><span bind:tap="palyAudio">{{textPlay}}</span><span bind:tap="nextPlay">下一段</span>
if (isCanUseBgAudio){innerAudioContext = wx.createInnerAudioContext({useWebAudioImplement: true})backgroundAudioManager = wx.getBackgroundAudioManager()backgroundAudioManager.onEnded(() => {console.log("音乐播放结束");if (this.data.currentIndex != (this.data.currentList.length -1)){this.nextPlay()} else {console.log('最后结束')}