使用 wx.createInnerAudioContext() 創建的音頻播放的時候,在安卓和模擬器中都可以正常播放,在ios中無法播放,這個時候有兩個方面:
- 問題一:在ios選擇靜音模式下,音頻是無法正常播放的,這里不做過多解釋,詳解相關點擊 傳送門 。
- 問題二:在音頻的路徑中不能存在中文(大坑),下面就中文問題進行描述。
音頻鏈接中不能存在中文,使用encodeURIComponent()將鏈接全部編碼也不能識別,只能將 https://xxx.xxx.xxx/ 去除剩余部分進行編碼才可以,代碼如下:
let audio = 'https://xxx.xxx.xxx/uploads/music/擁抱春天.mp3'; // 兼容ios,實現地址轉碼,encodeURIComponent中的為歌名 let src = audio.slice(0,audio.indexOf('music')+6) + encodeURIComponent(audio.slice(audio.indexOf('music') + 6 )) innerAudioContext.src = src
