小程序ios音頻播放沒聲音問題的解決
小程序提供了錄音和播放音頻的能力,從基礎(chǔ)庫 1.6.0 開始支持了wx.getRecorderManager(),錄音都采用wx.getRecorderManager()提供的api,播放音頻文件采用wx.createInnerAudioContext()提供的api
導(dǎo)入錄音和播放音頻功能
const recorderManager = wx.getRecorderManager(); // 錄音功能 const innerAudioContext = wx.createInnerAudioContext(); // 播放音頻
注冊(cè)錄音結(jié)束事件
// 錄音結(jié)束
recorderManager.onStop((res) => {
console.log('recorder stop');
const { tempFilePath } = res; // 錄音的本地臨時(shí)文件
// ... 播放音頻
innerAudioContext.src = tempFilePath ;
innerAudioContext.play();
});
開始錄音
const options = {
duration: 10000,
sampleRate: 44100,
numberOfChannels: 1,
encodeBitRate: 192000,
format: 'aac',
frameSize: 50
}
recorderManager.start(options);
options是一些音頻的配置,具體的配置可以查看 官方文檔
這樣就創(chuàng)建了一個(gè)簡(jiǎn)單的音頻錄音和播放功能
ios播放音頻文件沒有聲音
在開發(fā)過程中發(fā)現(xiàn)在開發(fā)者工具和安卓測(cè)試機(jī)上都能正常錄音和播放錄音文件,但是在ios手機(jī)上發(fā)現(xiàn)音頻文件播放沒有聲音,百度查看沒有發(fā)現(xiàn)有遇到類似的問題,只能自己各種測(cè)試,最后發(fā)現(xiàn)ios手機(jī)是靜音模式?。。」蝗∠o音模式就能夠正常播放了。
其實(shí)仔細(xì)查看api文檔, innerAudioContext 對(duì)象的屬性列表中發(fā)現(xiàn)一個(gè)屬性 obeyMuteSwitch ,這個(gè)屬性可以在靜音模式下播放音頻文件,并且有聲音!?。?/p>
是否遵循系統(tǒng)靜音開關(guān),當(dāng)此參數(shù)為 false 時(shí),即使用戶打開了靜音開關(guān),也能繼續(xù)發(fā)出聲音,默認(rèn)值 true

可以通過設(shè)置obeyMuteSwitch為false開啟在靜音模式下播放音頻!解決了ios靜音模式下播放音頻文件沒有聲音的問題!
innerAudioContext.obeyMuteSwitch = false;
在開發(fā)小程序的過程中遇到問題還是應(yīng)該多查看api文檔,才能更加快速的解決遇到的bug!
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Bootstrap導(dǎo)航菜單點(diǎn)擊后無法自動(dòng)添加active的處理方法
今天小編就為大家分享一篇Bootstrap導(dǎo)航菜單點(diǎn)擊后無法自動(dòng)添加active的處理方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-08-08
javascript檢測(cè)是否聯(lián)網(wǎng)的實(shí)現(xiàn)代碼
這篇文章主要介紹了javascript檢測(cè)是否聯(lián)網(wǎng)的實(shí)現(xiàn)代碼,需要的朋友可以參考下2014-09-09
springMvc 前端用json的方式向后臺(tái)傳遞對(duì)象數(shù)組方法
今天小編就為大家分享一篇springMvc 前端用json的方式向后臺(tái)傳遞對(duì)象數(shù)組方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-08-08
js插件設(shè)置innerHTML時(shí)在IE8下提示“未知運(yùn)行時(shí)錯(cuò)誤”解決方法
這篇文章主要介紹了js插件設(shè)置innerHTML時(shí)在IE8下提示“未知運(yùn)行時(shí)錯(cuò)誤”解決方法,較為詳細(xì)的分析了錯(cuò)誤的原因及對(duì)應(yīng)的解決方法,需要的朋友可以參考下2015-04-04
JS實(shí)現(xiàn)遍歷不規(guī)則多維數(shù)組的方法
這篇文章主要介紹了JS實(shí)現(xiàn)遍歷不規(guī)則多維數(shù)組的方法,涉及javascript數(shù)組遞歸遍歷相關(guān)實(shí)現(xiàn)與使用技巧,需要的朋友可以參考下2018-03-03
innerText和textContent對(duì)比及使用介紹
innerText使用過程中遇到了FireFox的兼容問題FireFox不支持innerText方法但是有個(gè)類似的方法,叫textContent,類似innerText,都是用來獲取(設(shè)置)元素中text的方法,感興趣的朋友可以參考下2013-02-02
js實(shí)現(xiàn)彈窗插件功能實(shí)例代碼分享
這篇文章主要介紹了2013-12-12

