小程序开发API之背景音频BackgroundAudioManager

版权声明:欢迎转载,可Chat交流,写博不易请标明出处: https://blog.csdn.net/JackJia2015/article/details/86712676

playBackgroundAudio、stopBackgroundAudio、pauseBackgroundAudio、seekBackgroundAudio、onBackgroundAudioStop、onBackgroundAudioPlay、onBackgroundAudioPause、getBackgroundAudioPlayerState、接口停止维护,请使用 wx.getBackgroundAudioManager 代替

旧背景音频

wx.playBackgroundAudio(Object object)

使用后台播放器播放音乐。对于微信客户端来说,只能同时有一个后台音乐在播放。当用户离开小程序后,音乐将暂停播放;当用户在其他小程序占用了音乐播放器,原有小程序内的音乐将停止播放。本接口停止维护,请使用 wx.getBackgroundAudioManager 代替
参数Object object
在这里插入图片描述

wx.pauseBackgroundAudio(Object object)

暂停播放音乐。本接口停止维护,请使用 wx.getBackgroundAudioManager 代替
参数Object object在这里插入图片描述

wx.stopBackgroundAudio(Object object)

停止播放音乐。本接口停止维护,请使用 wx.getBackgroundAudioManager 代替
参数Object object在这里插入图片描述

wx.seekBackgroundAudio(Object object)

控制音乐播放进度。本接口停止维护,请使用 wx.getBackgroundAudioManager 代替
参数Object object在这里插入图片描述

wx.onBackgroundAudioStop(function callback)

监听音乐停止事件。本接口停止维护,请使用 wx.getBackgroundAudioManager 代替
参数
function callback
音乐停止事件的回调函数

wx.onBackgroundAudioPlay(function callback)

监听音乐播放事件。本接口停止维护,请使用 wx.getBackgroundAudioManager 代替
参数
function callback
音乐播放事件的回调函数

wx.onBackgroundAudioPause(function callback)

监听音乐暂停事件。本接口停止维护,请使用 wx.getBackgroundAudioManager 代替
参数
function callback
音乐暂停事件的回调函数

wx.getBackgroundAudioPlayerState(Object object)

获取后台音乐播放状态。本接口停止维护,请使用 wx.getBackgroundAudioManager 代替
参数Object object在这里插入图片描述

object.success 回调函数参数Object res在这里插入图片描述

res.status 的合法值在这里插入图片描述

下面说一下新的背景音乐API

wx.getBackgroundAudioManager()

获取全局唯一的背景音频管理器。 小程序切入后台,如果音频处于播放状态,可以继续播放。但是后台状态不能通过调用API操纵音频的播放状态。
从微信客户端6.7.2版本开始,若需要在小程序切后台后继续播放音频,需要在 app.json 中配置 requiredBackgroundModes 属性。开发版和体验版上可以直接生效,正式版还需通过审核。
{
“pages”: [“pages/index/index”],
“requiredBackgroundModes”: [“audio”]
}

BackgroundAudioManager

BackgroundAudioManager 实例,可通过 wx.getBackgroundAudioManager 获取。

属性

string src
音频的数据源(2.2.3 开始支持云文件ID)。默认为空字符串,当设置了新的 src 时,会自动开始播放,目前支持的格式有 m4a, aac, mp3, wav。

number startTime
音频开始播放的位置(单位:s)。

string title
音频标题,用于原生音频播放器音频标题(必填)。原生音频播放器中的分享功能,分享出去的卡片标题,也将使用该值。

string epname
专辑名,原生音频播放器中的分享功能,分享出去的卡片简介,也将使用该值。

string singer
歌手名,原生音频播放器中的分享功能,分享出去的卡片简介,也将使用该值。

string coverImgUrl
封面图 URL,用于做原生音频播放器背景图。原生音频播放器中的分享功能,分享出去的卡片配图及背景也将使用该图。

string webUrl
页面链接,原生音频播放器中的分享功能,分享出去的卡片简介,也将使用该值。

string protocol
音频协议。默认值为 ‘http’,设置 ‘hls’ 可以支持播放 HLS 协议的直播音频。

number duration
当前音频的长度(单位:s),只有在有合法 src 时返回。(只读)

number currentTime
当前音频的播放位置(单位:s),只有在有合法 src 时返回。(只读)

boolean paused
当前是否暂停或停止。(只读)

number buffered
音频已缓冲的时间,仅保证当前播放时间点到此时间点内容已缓冲。(只读)

方法

BackgroundAudioManager.play()
播放音乐

BackgroundAudioManager.pause()
暂停音乐

BackgroundAudioManager.seek(number currentTime)
跳转到指定位置

BackgroundAudioManager.stop()
停止音乐

BackgroundAudioManager.onCanplay(function callback)
监听背景音频进入可播放状态事件。但不保证后面可以流畅播放

BackgroundAudioManager.onWaiting(function callback)
监听音频加载中事件。当音频因为数据不足,需要停下来加载时会触发

BackgroundAudioManager.onError(function callback)
监听背景音频播放错误事件

BackgroundAudioManager.onPlay(function callback)
监听背景音频播放事件

BackgroundAudioManager.onPause(function callback)
监听背景音频暂停事件

BackgroundAudioManager.onSeeking(function callback)
监听背景音频开始跳转操作事件

BackgroundAudioManager.onSeeked(function callback)
监听背景音频完成跳转操作事件

BackgroundAudioManager.onEnded(function callback)
监听背景音频自然播放结束事件

BackgroundAudioManager.onStop(function callback)
监听背景音频停止事件

BackgroundAudioManager.onTimeUpdate(function callback)
监听背景音频播放进度更新事件

BackgroundAudioManager.onNext(function callback)
监听用户在系统音乐播放面板点击下一曲事件(仅iOS)

BackgroundAudioManager.onPrev(function callback)
监听用户在系统音乐播放面板点击上一曲事件(仅iOS)

示例代码:

const backgroundAudioManager = wx.getBackgroundAudioManager()
    backgroundAudioManager.title = '此时此刻'
    backgroundAudioManager.epname = '此时此刻'
    backgroundAudioManager.singer = '许巍'
    backgroundAudioManager.coverImgUrl = 'http://y.gtimg.cn/music/photo_new/T002R300x300M000003rsKF44GyaSk.jpg?max_age=2592000'
    // 设置了 src 之后会自动播放
    backgroundAudioManager.src = 'http://ws.stream.qqmusic.qq.com/M500001VfvsJ21xFqb.mp3?guid=ffffffff82def4af4b12b3cd9337d5e7&uin=346897220&vkey=6292F51E1E384E061FF02C31F716658E5C81F5594D561F2E88B854E81CAAB7806D5E4F103E55D33C16F3FAC506D1AB172DE8600B37E43FAD&fromtag=46'





猜你喜欢

转载自blog.csdn.net/JackJia2015/article/details/86712676