微信小程序之音乐播放

微信小程序之音乐播放

这次用的是API中的wx.createInnerAudioContext()接口 (创建内部 audio 上下文 InnerAudioContext 对象。

InnerAudioContext 对象中的属性

属性
string src音频资源的地址,用于直接播放。2.2.3 开始支持云文件ID
number startTime开始播放的位置(单位:s),默认为 0
boolean autoplay是否自动开始播放,默认为 false
boolean loop是否循环播放,默认为 false
boolean obeyMuteSwitch是否遵循系统静音开关,默认为 true。当此参数为 false 时,即使用户打开了静音开关,也能继续发出声音。从 2.3.0 版本开始此参数不生效,使用 wx.setInnerAudioOption 接口统一设置。
number volume音量。范围 0~1。默认为 1基础库 1.9.90 开始支持,低版本需做兼容处理。
number playbackRate播放速度。范围 0.5-2.0,默认为 1。(Android 需要 6 及以上版本)基础库 2.11.0 开始支持,低版本需做兼容处理。
number duration当前音频的长度(单位 s)。只有在当前有合法的 src 时返回(只读)
number currentTime当前音频的播放位置(单位 s)。只有在当前有合法的 src 时返回,时间保留小数点后 6 位(只读)
boolean paused当前是是否暂停或停止状态(只读)
number buffered音频缓冲的时间点,仅保证当前播放时间点到此时间点内容已缓冲(只读)

InnerAudioContext 对象中的方法

方法
InnerAudioContext.play()播放
InnerAudioContext.pause()暂停。暂停后的音频再播放会从暂停处开始播放
InnerAudioContext.stop()停止。停止后的音频再播放会从头开始播放。
InnerAudioContext.seek(number position)跳转到指定位置
InnerAudioContext.destroy()销毁当前实例
InnerAudioContext.onCanplay(function callback)监听音频进入可以播放状态的事件。但不保证后面可以流畅播放
InnerAudioContext.offCanplay(function callback)取消监听音频进入可以播放状态的事件
InnerAudioContext.onPlay(function callback)监听音频播放事件
InnerAudioContext.offPlay(function callback)取消监听音频播放事件
InnerAudioContext.onPause(function callback)监听音频暂停事件
InnerAudioContext.offPause(function callback)取消监听音频暂停事件
InnerAudioContext.onStop(function callback)监听音频停止事件
InnerAudioContext.offStop(function callback)取消监听音频停止事件
InnerAudioContext.onEnded(function callback)监听音频自然播放至结束的事件
InnerAudioContext.offEnded(function callback)取消监听音频自然播放至结束的事件
InnerAudioContext.onTimeUpdate(function callback)监听音频播放进度更新事件
InnerAudioContext.offTimeUpdate(function callback)取消监听音频播放进度更新事件
InnerAudioContext.onError(function callback)监听音频播放错误事件
InnerAudioContext.offError(function callback)取消监听音频播放错误事件
InnerAudioContext.onWaiting(function callback)监听音频加载中事件。当音频因为数据不足,需要停下来加载时会触发
InnerAudioContext.offWaiting(function callback)取消监听音频加载中事件
InnerAudioContext.onSeeking(function callback)监听音频进行跳转操作的事件
InnerAudioContext.offSeeking(function callback)取消监听音频进行跳转操作的事件
InnerAudioContext.onSeeked(function callback)监听音频完成跳转操作的事件
InnerAudioContext.offSeeked(function callback)取消监听音频完成跳转操作的事件

支持音频格式

格式iOSAndroid
flacx
m4a
oggx
apex
amrx
wmax
wav
mp3
mp4x
aac
aiffx
cafx
//声明一个公共的API接口
var bgam = wx.createInnerAudioContext();
var id = 1
//在page js中这样写
Page({
	onLoad: function (options) {
	//在页面家在方法中写出播放文件的地址
	bgam.src = "http://antiserver.kuwo.cn/anti.s?useless=/resource/&format=mp3&rid=MUSIC_28428497&response=res&type=convert_url&"
	//默认在页面加载完成后就开始播放
	bgam.play()
	}
	//控制音乐播放暂停的方法
	music: function () {
	//判断id的初始值是多少(id初始值给的是1代表播放)
    if (id == 1) {
      //如果id等于一的话代表正在播放就用.push的方法暂停,然后再给id赋值为0代表音乐暂停
      bgam.pause()
      id = 0
    } else {
      //如果id不等于一的话代表音乐暂停就用.play的方法播放,然后再给id赋值为1代表音乐播放
      bgam.play()
      id = 1
    }
  },
})
  • 3
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值