然后我下面在js文件里写一个方法来教大家如何使用
以上方法写好后我们只需要在你需要的时候调用这个方法即可,例如点击时让他播放
最后,有不足的地方还请大家批评指正
在小程序中,有两个音频播放,一个是InnerAudioContext(音频),一个是BackgroundAudioManager(背景音频)这两个api都可以在微信开发者文档里的api里面的音频和背景音频中找到
先说说这两个的区别:
InnerAudioContext BackgroundAudioManager
没有标题 必须填写标题
没有封面,专辑名,歌手等信息 可填封面,专辑名,歌手等信息
在小程序进入后台的时候会被暂停 在小程序进入后台时依旧会播放
手机状态栏不会有信息,微信内没有悬浮标志 手机状态栏会有类似于QQ音乐的音乐框,微信内部有悬浮的标志
只能通过事件方法进行暂停,销毁 用户可以通过状态栏,悬浮窗进行暂停,销毁
多次执行会同时播放多个音频 多次执行只会重新播放,不会出现多个
同一src多次调用会多次播放 同一src多次调用不多次播放,不重新播放(不影响播放)
再说说使用方法
其实两者的使用方法一模一样
写法:
InnerAudioContext
1.app.json{
"pages":[
"pages/audio/audio"]}
使用audio组件
2. audio.wxml
<audio
poster="{{poster}}"
name="{{name}}"
author="{{author}}"
src="{{src}}"
id="myAudio"
controls
loop></audio><button type="primary" bindtap="audioPlay">播放</button><button type="primary" bindtap="audioPause">暂停</button><button type="primary" bindtap="audio14">设置当前播放时间为14秒</button><button type="primary" bindtap="audioStart">回到开头</button>
3. audio.js
Page({
onReady(e) {
// 使用 wx.createAudioContext 获取 audio 上下文 context
this.audioCtx = wx.createAudioContext('myAudio')
},
data: {
poster: 'http://y.gtimg.cn/music/photo_new/T002R300x300M000003rsKF44GyaSk.jpg?max_age=2592000',
name: '此时此刻',
author: '许巍',
src: 'http://ws.stream.qqmusic.qq.com/M500001VfvsJ21xFqb.mp3?guid=ffffffff82def4af4b12b3cd9337d5e7&uin=346897220&vkey=6292F51E1E384E06DCBDC9AB7C49FD713D632D313AC4858BACB8DDD29067D3C601481D36E62053BF8DFEAF74C0A5CCFADD6471160CAF3E6A&fromtag=46',
},
audioPlay() {
this.audioCtx.play()
},
audioPause() {
this.audioCtx.pause()
},
audio14() {
this.audioCtx.seek(14)
},
audioStart() {
this.audioCtx.seek(0)
}})
4. 效果图
音乐播放器
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)