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

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()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/615707.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

渗透测试:保障网络安全的重要手段!

随着信息技术的快速发展,网络安全问题日益受到关注。渗透测试作为一种重要的网络安全检测和评估方法,已经成为保障网络安全的重要手段之一。本文将介绍渗透测试的基本概念、流程、以及在保障网络安全方面的应用。 一、渗透测试的基本概念 渗透测试是一…

java项目之留学生交流互动论坛(ssm)

风定落花生,歌声逐流水,大家好我是风歌,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于ssm的留学生交流互动论坛。项目源码以及部署相关请联系风歌,文末附上联系信息 。 项目简介: 管理员:首页、个…

PyQt UI 信号槽函数重复执行问题

PyQt环境下,信号connect槽函数的方法有两种: (1)使用connect() 示例代码:对话框SelectingDlg,上设置了一个pushbutton控件 class SelectingDlg(Ui_SelectingDlg,QDialog):def __i…

最佳利用Mock提升测试效率的7个技巧!

再聊这个问题之前,我们先了解一下公司技术架构的演变过程,这样我们才能真正体会到我们为什么要使用 Mock功能。 单体应用 在早期, 大部分公司的应用技术栈主要可以分为两大类:LAMP(Linux Apache MySQL PHP&#x…

CSS基础方法——引入方式、属性、基础选择器

CSS 主要用于设置 HTML 页面中的文本样式(字体、大小、颜色、对齐方式……)、图片样式(宽高、边框样式、边距……)以及版面的布局和外观显示样式。 1、CSS引入方式 行内样式 写在标签中,通常不使用,只做…

并发编程(五)

读写锁:适用于读多写少的场景 读写锁是一种用于同步访问共享资源的机制,它允许多个线程同时读取共享资源,但在写入时则需要独占式的访问。 Java中的读写锁可以通过java.util.concurrent.locks包中的ReadWriteLock接口和它的实现类Reentrant…

apply、call、bind的区别 如何实现一个bind

apply、call、bind的区别? 如何实现一个bind 作用 apply、call、bind 的作用是改变函数执行时的上下文,简而言之就是改变函数运行时的 this 指向 那么什么情况下需要改变 this 的指向呢? 下面举个例子 var name "lucy"; var obj {name: "mar…

Arcgis10制图/建模小技巧:梯田地形

小编早年做城市设计的时候,还不知道怎么用gis生成地形,然后导入skechup;只会把cad的等高线导进su后一层层拉伸(过程很繁琐),会得到梯田地形。梯田地形虽然不完全贴合实际,但也凑合能用&#xff…

SV-9001 壁挂式网络采播终端

SV-9001 壁挂式网络采播终端 一、描述 SV-9001是深圳锐科达电子有限公司的一款壁挂式网络采播终端,具有10/100M以太网接口,配置一路线路输入和一组麦克风输入,可以直接连接音源输出设备或麦克风,将采集音源编码后发送至网络播放终…

Win2008R2上RedisDesktopManager 黑屏

问题: 运行发现右侧显示缓存信息的部分是黑屏。 解决方式: 管理工具->远程桌面服务->远程桌面会话主机配置->RDP-TCP->属性->客户端设置->颜色深度->限制最大颜色深度,将16位改为32位

通过IP地址识别风险用户

随着互联网的迅猛发展,网络安全成为企业和个人关注的焦点之一。识别和防范潜在的风险用户是维护网络安全的关键环节之一。IP数据云将探讨通过IP地址识别风险用户的方法和意义。 IP地址的基本概念:IP地址是互联网上设备的独特标识符,它分为IP…

Word·VBA实现邮件合并

目录 制作邮件合并模板VBA实现邮件合并举例 之前写过的一篇使用《python实现word邮件合并》,本文为vba实现方法 制作邮件合并模板 域名可以使用中文,最终完成的word模板,wps操作步骤类似 VBA实现邮件合并 在Excel启用宏的工作表运行以下代…

【时光记:2023的心灵旅程】

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

关于react-native-reanimated 3.6.1在react native debugger报错问题

ExceptionsManager.js:158 Error: [Reanimated] UpdatePropsManager is not available on non-native platform. 在node_module下找到找到相关文件,注释掉相关代码 然后打补丁放在自己的项目下,关于打补丁在博客主页,自行查看讲解

如何在知识付费平台中精准定位,选择最适合自己的?

明理信息科技知识付费saas租户平台 在当今的知识付费时代,我们面临着一个重要的问题:如何从众多的知识付费平台中选择适合自己的平台?本文将为您提供一些实用的建议,帮助您做出正确的选择。 首先,我们需要了解自己的…

精确掌控并发:分布式环境下并发流量控制的设计与实现(二)

3. 固定窗口 参考:精确掌控并发:分布式环境下并发流量控制的设计与实现(一)-CSDN博客 4. 滑动窗口 滑动窗口算法是一种更为灵活的流量控制方案,它比固定窗口算法能更平滑地处理突发流量。在滑动窗口中,时…

简约的网易云音乐播放器SPlayer

今天给大家介绍另一款音乐播放器 SPlayer ,如果你对第三方网易云音乐播放器感兴趣,可以去看看老苏之前写的其他项目 文章传送门: 高颜值的第三方网易云播放器YesPlayMusic(续)跨平台的第三方网易云播放器Radishes 什么…

自定义shiro标签实现hasAnyPermission

前言 如何自定义hasAnyPermission 标签 实现hasAnyPermission 实现 public class HasAnyPermssionTag extends PermissionTag {public HasAnyPermssionTag() {}protected boolean showTagBody(String p) {String[] arr p.replaceAll("\r\n", "").repl…

mongo统计数据库和集合大小

1. 数据库维度大小统计 按GB统计 db.stats( { scale: 1024*1024*1024 } )统计结果 {"db" : "test","collections" : 22,"views" : 0,"objects" : 63762050,"avgObjSize" : 405.3638712212045,"dataSize&q…

通义千问协助分析openHarmony内核编译故障记录

drivers/hdf/khdf/manager/../../../..//framework/utils/src/hdf_sbuf.c:271:6: 错误: ‘-mgeneral-regs-only’ is incompatible with floating-point argument 这个编译错误提示指出,在编译源文件 "hdf_sbuf.c"(位于 "driv…