小程序开放平台

文档中心
基础
路由
跳转
转发
界面
网络
支付
数据缓存
媒体
图片
地图
视频
富文本
相机
音频
xhs.createInnerAudioContext
InnerAudioContext
录音
位置
开放接口
设备
XHSML
性能
第三方平台
文件
数据分析
画布

InnerAudioContext

开发
>
JS API
>
媒体
>
音频
>
InnerAudioContext
>
更新时间:2026-04-10 18:01:13

基础库 3.148.0 开始支持。

xhs.createInnerAudioContext() 返回的音频上下文实例。

属性

属性
类型
默认值
必填
说明
srcstring音频资源地址。支持网络路径。设置后若 autoplay 为 true,会自动触发播放
startTimenumber0音频开始播放的位置(单位:秒)
autoplaybooleanfalse是否自动播放。需在 src 设置之前配置
loopbooleanfalse是否循环播放
volumenumber1音量,范围 0~1
playbackRatenumber1播放速率
durationnumber只读。当前音频时长(单位:秒),需在可以播放后才有效
currentTimenumber只读。当前播放位置(单位:秒)
pausedbooleantrue只读。当前是否暂停
bufferednumber只读。音频已缓冲的时间点(单位:秒)

duration、currentTime、paused、buffered 均为同步读取端侧状态,调用时会直接向端侧查询当前值。

方法

方法
说明
play()播放
pause()暂停
stop()停止。停止后再次 play() 会从头开始播放
seek(position)跳转到指定位置(单位:秒)
destroy()销毁当前实例,释放资源。不再使用时请调用此方法,避免内存泄漏

事件

方法
说明
onCanplay(callback)监听音频进入可播放状态
offCanplay(callback)取消监听
onPlay(callback)监听播放事件
offPlay(callback)取消监听
onPause(callback)监听暂停事件
offPause(callback)取消监听
onStop(callback)监听停止事件
offStop(callback)取消监听
onEnded(callback)监听自然播放至末尾事件
offEnded(callback)取消监听
onTimeUpdate(callback)监听播放进度更新事件
offTimeUpdate(callback)取消监听
onError(callback)监听播放错误事件
offError(callback)取消监听
onWaiting(callback)监听音频加载中事件(缓冲不足,播放暂停)
offWaiting(callback)取消监听
onSeeking(callback)监听跳转进度中事件
offSeeking(callback)取消监听
onSeeked(callback)监听跳转进度完成事件
offSeeked(callback)取消监听

示例代码

const audioCtx = xhs.createInnerAudioContext()
audioCtx.src = 'https://example.com/audio.aac'

audioCtx.onPlay(() => {
  console.log('开始播放')
})
audioCtx.onError((err) => {
  console.error('播放错误', err)
})

audioCtx.play()

// 页面卸载时记得销毁
audioCtx.destroy()
该文档是否对您有帮助?