微信小程序播放緩存的(de)音頻文件
發表時(shí)間:2021-3-31
發布人(rén):融晨科技
浏覽次數:104
很多時(shí)候我們都想把數據預先緩存到(dào)本地(dì / de),節省帶寬。但是(shì)最近在(zài)處理微信小程序播放緩存到(dào)本地(dì / de)的(de)音頻文件的(de)時(shí)候,遇到(dào)一些小問題,然後對于(yú)安卓和(hé / huò)IOS需要(yào / yāo)采用不(bù)同的(de)播放策略。
首先,如果哪怕用audio标簽來(lái)播放在(zài)線的(de)音頻文件,假如服務端沒有實現斷點續傳,IOS是(shì)無法播放的(de),這(zhè)個(gè)需要(yào / yāo)注意。
對于(yú)緩存在(zài)小程序的(de)音頻(wx.saveFile(OBJECT)保存的(de)音頻),IOS隻能通過播放背景音樂的(de)接口播放,其它播放方法都沒有成功實踐,而(ér)對于(yú)安卓,内部 audio 上(shàng)下文 innerAudioContext 對象即可播放。給出(chū)代碼:
var res = wx.getSystemInfoSync()
if (res.platform == 'ios') {
this.audio = wx.getBackgroundAudioManager()
} else {
this.audio = wx.createInnerAudioContext();
}
this.audio.title = "音樂文件";
this.audio.src = https://www.wxapp-union.com/"本地(dì / de)文件地(dì / de)址";
this.audio.play();