# qq.getBackgroundAudioManager

# BackgroundAudioManager qq.getBackgroundAudioManager()

获取全局唯一的背景音频管理器。 小程序切入后台,如果音频处于播放状态,可以继续播放。但是后台状态不能通过调用API操纵音频的播放状态。

若需要在小程序切后台后继续播放音频,需要在 app.json 中配置 requiredBackgroundModes 属性。开发版和体验版上可以直接生效,正式版还需通过审核。

# 返回值

# BackgroundAudioManager

# BackgroundAudioManager

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

# 属性

# string src

音频的数据源。默认为空字符串,当设置了新的 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 = qq.getBackgroundAudioManager()

backgroundAudioManager.title = '此时此刻'
backgroundAudioManager.epname = '此时此刻'
backgroundAudioManager.singer = '许巍'
backgroundAudioManager.coverImgUrl = 'https://y.gtimg.cn/music/photo_new/T002R300x300M000003rsKF44GyaSk.jpg?max_age=2592000'
// 设置了 src 之后会自动播放
backgroundAudioManager.src = 'https://ws.stream.qqmusic.qq.com/M500001VfvsJ21xFqb.mp3?guid=ffffffff82def4af4b12b3cd9337d5e7&uin=346897220&vkey=6292F51E1E384E061FF02C31F716658E5C81F5594D561F2E88B854E81CAAB7806D5E4F103E55D33C16F3FAC506D1AB172DE8600B37E43FAD&fromtag=46'
1
2
3
4
5
6
7
8

# .onCanplay

# BackgroundAudioManager.onCanplay(function callback)

监听背景音频进入可播放状态事件。但不保证后面可以流畅播放

# 参数

# function callback

背景音频进入可播放状态事件的回调函数

# .onEnded

# BackgroundAudioManager.onEnded(function callback)

监听背景音频自然播放结束事件

# 参数

# function callback

背景音频自然播放结束事件的回调函数

# .onError

# BackgroundAudioManager.onError(function callback)

监听背景音频播放错误事件

# 参数

# function callback

背景音频播放错误事件的回调函数

# .onNext

# BackgroundAudioManager.onNext(function callback)

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

# 参数

# function callback

用户在系统音乐播放面板点击下一曲事件的回调函数

# .onPause

# BackgroundAudioManager.onPause(function callback)

监听背景音频暂停事件

# 参数

# function callback

背景音频暂停事件的回调函数

# .onPlay

# BackgroundAudioManager.onPlay(function callback)

监听背景音频播放事件

# 参数

# function callback

背景音频播放事件的回调函数

# .onPrev

# BackgroundAudioManager.onPrev(function callback)

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

# 参数

# function callback

用户在系统音乐播放面板点击上一曲事件的回调函数

# .onSeeked

# BackgroundAudioManager.onSeeked(function callback)

监听背景音频完成跳转操作事件

# 参数

# function callback

背景音频完成跳转操作事件的回调函数

# .onSeeking

# BackgroundAudioManager.onSeeking(function callback)

监听背景音频开始跳转操作事件

# 参数

# function callback

背景音频开始跳转操作事件的回调函数

# .onStop

# BackgroundAudioManager.onStop(function callback)

监听背景音频停止事件

# 参数

# function callback

背景音频停止事件的回调函数

# .onTimeUpdate

# BackgroundAudioManager.onTimeUpdate(function callback)

监听背景音频播放进度更新事件

# 参数

# function callback

背景音频播放进度更新事件的回调函数

# .onWaiting

# BackgroundAudioManager.onWaiting(function callback)

监听音频加载中事件。当音频因为数据不足,需要停下来加载时会触发

# 参数

# function callback

音频加载中事件的回调函数

# .pause

# BackgroundAudioManager.pause()

暂停音乐

# 错误

错误码 错误信息 说明
10001 系统错误
10002 网络错误
10003 文件错误
10004 格式错误
-1 未知错误

# .play

# BackgroundAudioManager.play()

播放音乐

# 错误

错误码 错误信息 说明
10001 系统错误
10002 网络错误
10003 文件错误
10004 格式错误
-1 未知错误

# .seek

# BackgroundAudioManager.seek(number currentTime)

跳转到指定位置

# 参数

# number currentTime

跳转的位置,单位 s。精确到小数点后 3 位,即支持 ms 级别精确度

# 错误

错误码 错误信息 说明
10001 系统错误
10002 网络错误
10003 文件错误
10004 格式错误
-1 未知错误

# .stop

# BackgroundAudioManager.stop()

停止音乐

# 错误

错误码 错误信息 说明
10001 系统错误
10002 网络错误
10003 文件错误
10004 格式错误
-1 未知错误