小程序ios音频播放没声音问题的解决


Posted in Javascript onJuly 11, 2018

小程序提供了录音和播放音频的能力,从基础库 1.6.0 开始支持了wx.getRecorderManager(),录音都采用wx.getRecorderManager()提供的api,播放音频文件采用wx.createInnerAudioContext()提供的api

导入录音和播放音频功能

const recorderManager = wx.getRecorderManager();    // 录音功能
const innerAudioContext = wx.createInnerAudioContext(); // 播放音频

注册录音结束事件

// 录音结束
recorderManager.onStop((res) => {
 console.log('recorder stop');
 const { tempFilePath } = res; // 录音的本地临时文件
 // ... 播放音频
 innerAudioContext.src = tempFilePath ;
 innerAudioContext.play();
});

开始录音

const options = {
 duration: 10000,
 sampleRate: 44100,
 numberOfChannels: 1,
 encodeBitRate: 192000,
 format: 'aac',
 frameSize: 50
}
recorderManager.start(options);

options是一些音频的配置,具体的配置可以查看 官方文档

这样就创建了一个简单的音频录音和播放功能

ios播放音频文件没有声音

在开发过程中发现在开发者工具和安卓测试机上都能正常录音和播放录音文件,但是在ios手机上发现音频文件播放没有声音,百度查看没有发现有遇到类似的问题,只能自己各种测试,最后发现ios手机是静音模式!!!果然取消静音模式就能够正常播放了。

其实仔细查看api文档, innerAudioContext 对象的属性列表中发现一个属性 obeyMuteSwitch ,这个属性可以在静音模式下播放音频文件,并且有声音!!!

是否遵循系统静音开关,当此参数为 false 时,即使用户打开了静音开关,也能继续发出声音,默认值 true

小程序ios音频播放没声音问题的解决

可以通过设置obeyMuteSwitch为false开启在静音模式下播放音频!解决了ios静音模式下播放音频文件没有声音的问题!

innerAudioContext.obeyMuteSwitch = false;

在开发小程序的过程中遇到问题还是应该多查看api文档,才能更加快速的解决遇到的bug!

附 小程序开发文档链接

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 新浪背投广告实现代码
Jul 07 Javascript
js中哈希表的几种用法总结
Jan 28 Javascript
基于javascript的JSON格式页面展示美化方法
Jul 02 Javascript
JavaScript实现列出数组中最长的连续数
Dec 29 Javascript
js实现鼠标滑过文字链接色彩变化的效果
May 06 Javascript
微信小程序 引入es6 promise
Apr 12 Javascript
基于JS实现限时抢购倒计时间表代码
May 09 Javascript
Angularjs中的验证input输入框只能输入数字和小数点的写法(推荐)
Aug 16 Javascript
关于vue中watch检测到不到对象属性的变化的解决方法
Feb 08 Javascript
Vue 页面切换效果之 BubbleTransition(推荐)
Apr 08 Javascript
vue的常用组件操作方法应用分析
Apr 13 Javascript
微信小程序点餐系统开发常见问题汇总
Aug 06 Javascript
vue 1.0 结合animate.css定义动画效果
Jul 11 #Javascript
微信小程序实现发红包功能
Jul 11 #Javascript
vue框架搭建之axios使用教程
Jul 11 #Javascript
vue中动态设置meta标签和title标签的方法
Jul 11 #Javascript
Vue项目添加动态浏览器头部title的方法
Jul 11 #Javascript
node.js到底要不要加分号浅析
Jul 11 #Javascript
微信小程序实现红包功能(后端PHP实现逻辑)
Jul 11 #Javascript
You might like
DEDE采集大师官方留后门的删除办法
2011/01/08 PHP
php线性表的入栈与出栈实例分析
2015/06/12 PHP
PHP 输出缓冲控制(Output Control)详解
2016/08/25 PHP
php+ajax实现带进度条的上传图片功能【附demo源码下载】
2016/09/14 PHP
PHP培训要多少钱
2017/06/06 PHP
PHP将英文数字转换为阿拉伯数字实例讲解
2019/01/28 PHP
Laravel框架实现文件上传的方法分析
2019/09/29 PHP
Laravel 创建可以传递参数 Console服务的例子
2019/10/14 PHP
javascript 表格排序和表头浮动效果(扩展SortTable)
2009/04/07 Javascript
Dojo 学习笔记入门篇 First Dojo Example
2009/11/15 Javascript
js 禁止选择功能实现代码(兼容IE/Firefox)
2010/04/23 Javascript
JS代码优化技巧之通俗版(减少js体积)
2011/12/23 Javascript
jQuery 过滤not()与filter()实例代码
2012/05/10 Javascript
javascript中的作用域和上下文使用简要概述
2013/12/05 Javascript
innerHTML属性,outerHTML属性,textContent属性,innerText属性区别详解
2015/03/13 Javascript
11种ASP连接数据库的方法
2015/09/18 Javascript
JavaScript中判断数据类型的方法总结
2016/05/24 Javascript
如何在JS中实现相互转换XML和JSON
2016/07/19 Javascript
详解Angular开发中的登陆与身份验证
2016/07/27 Javascript
遍历json获得数据的几种方法小结
2017/01/21 Javascript
ES6学习之变量的两种命名方法示例
2017/07/18 Javascript
jQuery实现的form转json经典示例
2017/10/10 jQuery
编写Python的web框架中的Model的教程
2015/04/29 Python
Python实现的微信好友数据分析功能示例
2018/06/21 Python
下载与当前Chrome对应的chromedriver.exe(用于python+selenium)
2020/01/14 Python
如何从csv文件构建Tensorflow的数据集
2020/09/21 Python
Html5 localStorage入门教程
2018/04/26 HTML / CSS
SportsDirect.com新加坡:英国第一体育零售商
2019/03/30 全球购物
美国批发供应商:Kole Imports
2019/04/10 全球购物
物业管理个人自我评价
2013/11/08 职场文书
物业电工岗位职责
2013/11/20 职场文书
材料采购员岗位职责
2013/12/17 职场文书
财务工作者先进事迹材料
2014/01/17 职场文书
Redis数据结构之链表与字典的使用
2021/05/11 Redis
golang 语言中错误处理机制
2021/08/30 Golang
python如何利用cv2.rectangle()绘制矩形框
2022/12/24 Python