《微信小程序开发从入门到实战》学习八十

发布时间:2024年01月12日

6.11 内部音频API

小程序播放音频的方式有两种:内部音频和背景音频。内部音频支持用户使用小程序时播放音频;背景音频支持用户离开小程序后继续播放音频。

6.11.1内部音频API

使用wx.createInnerAudioContext接口创建内部音频上下文对象。在上下文对象设置些属性值。代码如下:

????const?innerAudioContext?=?wx.createInnerAudioContext()

????//?设置为自动开始播放

????innerAudioContext.autoplay?=?true

????//?设置音频资源地址

????innerAudioContext.src?=?'http://xxx.mp3'

在内部音频上下文对象中,可设置其他很多属性。名称和功能如下所示:

src:音频资源的地址,基础库2.2.3开始支持云文件ID

startTime:从音频的第几秒开始播放,默认0

autoplay:是否自动开始播放,默认false

loop:是否循环博美,默认false

obeyMuteSwitch:是否遵循系统静音开关。当参数为false时,即使用户手机设置为静音,也能继续发出声音。从基础库2.3.0版本开始此参数不生效,需要使用wx.setInnerAudioOption接口进行设置,默认true

volume:音量,范围0~1

? ?

? ? 内部音频上下文对象的一些属性可以读取到关于内部音频的信息。它们是只读属性,只能查询它们的值,但不可以修改。这些属性如下所示:

duration:当前音频的长度,单位秒。只有设置了合法src可才生效

currentTime:当前音频的播放位置,单位秒,精确到小数点后6位置。只有设置了合法src可才生效

paused:当前是否为暂停或停止状态

buffered:音频缓冲的时间点,保证当前播放时间点到该时间点的内容已缓冲

? ?

内部音频上下文对象还可使用一些函数控制音频的播放行为。示例代码如下:

????innerAudioContext.play()

????//?暂停音频,再次播放时会从暂停出开始播放

????innerAudioContext.pause()

????//?跳转到音频文件的3.1秒处。跳转事件单位为秒,精确到小数点后3位

????innerAudioContext.seek()

????//?停止音频,再次播放时会从头开始播放

????innerAudioContext.stop()

????//?销毁音频上下文,上下文对象将失效

????innerAudioContext.destroy()

文章来源:https://blog.csdn.net/xy2937131682/article/details/135547941
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。