小程序 - 音频能力介绍(四)

小程序支持播放和录制音频。小程序播放音频的方式有两种:内部音频和背景音频。
1.内部音频支持用户在使用小程序过程中播放音效;
2.背景音频支持在用户离开小程序后继续播放音效。

BackgroundAudioManager wx.getBackgroundAudioManager()

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

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

(二)内部音频

InnerAudioContext wx.createInnerAudioContext()

基础库 1.6.0 开始支持,低版本需做兼容处理

创建内部 audio 上下文 InnerAudioContext 对象。

处理音频中断事件

以游戏为例,在游戏中,经常有播放使用内部音频来播放游戏背景音乐的场景。音频中断事件指的是在游戏期间,音频被系统打断时触发的事件。音频中断事件分为中断开始和中断结束事件,分别使用 wx.onAudioInterruptionBegin()和 wx.onAudioInterruptionEnd() 来监听。

以下事件会触发音频中断开始事件:接到电话、闹钟响起、系统提醒、收到微信好友的语音/视频通话请求。被中断之后,小游戏内所有音频会被暂停,并在中断结束之前都不能再播放成功。

中断结束之后,被暂停的音频不会自动继续播放,游戏可监听音频中断结束事件,并在收到中断结束事件之后调用背景音乐继续播放。

如果游戏的逻辑强依赖音乐的播放(如音乐类游戏),需要在音频开始中断的时候暂停游戏

原文地址:https://www.cnblogs.com/congxueda/p/10342176.html

时间: 2024-11-02 19:46:34

小程序 - 音频能力介绍(四)的相关文章

微信小程序-04-详解介绍.json 配置文件

致我自己:小程序开发不是简单一两天的事,一两天只能算是了解,有时候看多了会烦,感觉很熟悉了,其实只是对表面进行了解,对编程却知之甚少,小程序开发不是简单的改模板,一两天很多部分改模板可能都做不到,坚持! 微信小程序-04-详解介绍.json 配置文件 宝典官方文档: https://developers.weixin.qq.com/miniprogram/dev/framework/MINA.html 今天开始深度学习编程语法,岁大部分是拷贝官方文档,代码类都是我自己敲的,希望能自己敲一遍表格里

微信小程序管理后台介绍

微信小程序的管理后台,每次进入都需要扫码,还是特别不爽,现在微信小程序还没正式发布,很多人都还没看到管理后台,这里抢先发布出来 ------------------------------------------------------------ http://www.cnblogs.com/likwo/p/6057258.html 好推小程序统计:https://weixin.hotapp.cn关键指标分析推广效果,一行代码接入微信登录 ---------------------------

微信小程序音频播放

小程序音频播放:不废话直接上代码: index.wxml <!--index.wxml--> <view class="mycontent"> <view class="swiper-tab"> <view class="swiper-tab-list {{currentTab==0 ? 'on' : ''}}" data-current="0" bindtap="swich

微信小程序-06-详解介绍.js 逻辑层文件-注册页面

上一篇介绍的是 app.js 逻辑层文件中注册程序,对应的每个分页面都会有的 js 文件中 page() 函数注册页面 微信小程序-06-详解介绍.js 逻辑层文件-注册页面 宝典官方文档: https://developers.weixin.qq.com/miniprogram/dev/framework/MINA.html 今天开始深度学习编程语法,虽然大部分是拷贝官方文档,代码类都是我自己敲的,希望能自己敲一遍表格里的内容,熟悉一下操作 页面 Page Page(Object) Page(

微信小程序教程(第四篇)

小程序开发基本框架及其限制与优化 开发基本框架(MINA框架) └─ Project-folder/ ·································· 项目所在目录 ├─ pages/ ······································ 页面目录 │ ├─ index/ ··································· index页面 │ │ ├─ index.js ······························

简述 18.8.18 现有的微信小程序API能力

小程序能力竟恐怖如斯---- // 用于简述API能力 var obj = { 网络: ["发起请求", "上传/下载", "WebSocket"], 媒体: 媒体: { 图片: [ "从本地相册选择图片或使用相机拍照", "预览图片", "获取图片信息,倘若为网络图片,需先配置download域名才能生效", "保存图片到系统相册", // 需要用户授权 ], 录音

Vue+koa2开发一款全栈小程序(1.课程介绍+2.ES6入门)

1.课程介绍 1.课程概述 1.做什么? Vue+koa2开发一款全栈小程序 2.哪些功能? 个人中心.图书列表.图书详情.图书评论.个人评论列表 3.技术栈 小程序.Vue.js.koa2.koa-router.mysql 2.课程亮点 1.项目前后端分离开发 Vue+koa2开发一款全栈小程序 2.完整流程,一步不少 注册小程序账号,前后端开发,打包,正式上线 2.小程序环境搭建 1.后台地址: https://mp.weixin.qq.com/ 2.文档地址: https://develo

微信小程序——音频播放器

先来个效果图韵下味: 需求: 音频的播放,暂停,中间按钮状态的变化,播放时实时更新播放进度: 前进15s,后退15s: 进度条拖动. 一开始想着这3个功能应该挺简单的.不就是播放,暂停,前进,后退么~呵~写的时候发现自己还是太年轻.当然,这跟自己的技术功底有关系.现在把我遇到的难点及要注意的点说一下~ 需要设置一个名为seekPosition的全局变量,初始值为0.我们要在播放的时候实时记录播放的位置,存到该变量里,这是方便在前进15s 或 后退15s 时计算时间点. 前进15s时要判断剩余时间

微信小程序——小程序的能力

小程序启动 通过app.json里pages字段可以获得页面路径,而写在 pages 字段的第一个页面就是这个小程序的首页(打开小程序看到的第一个页面),就像下面的代码中,小程序启动后的第一个页面就是index { "pages":[ "pages/index/index", "pages/logs/logs" ] } 小程序启动之后,在 app.js 里的 onLaunch 回调会被执行: App({ onLaunch: function ()