Unity AudioSource加載本地.mp3文件/UnityWebRequest

關(guān)鍵字:? Unity AudioSource本地Mp3文件加載

????????????????UnityWebRequestMultimedia.GetAudioClip() 新版本api

? ? ? ? ? ? ? ? UnityWebRequest.GetAudioClip()? 舊版api

? ? ? ? ? ? ? ? Errror:“Cannot connect to destination host.”

測(cè)試環(huán)境:2019.2.9f1

? ? ? ? ? ? ? ? ? ?發(fā)布安卓端

需求:mp3文件本地加載到Unity的AudioSource組件中

坑:

1.先看網(wǎng)絡(luò)上說(shuō)www不能加載mp3格式,所以選擇了UnityWebRequestMultimedia來(lái)加載;

2.由于做安卓Unity交互所以本地文件地址是安卓傳給我的,路徑為/data/user/0/下應(yīng)用的私有化目錄,發(fā)現(xiàn)Unity的UnityWebRequestMultimedia訪問(wèn)后返回的Error是:Cannot connect to destination host.

3.無(wú)奈只能從路徑中把mp3文件拷貝出來(lái)到Application.persistentPath試一試,結(jié)果還是不行,依舊返回上面的錯(cuò)誤。

4.最后在Application.persistentPath前面添加了“file://”終于訪問(wèn)并添加成功

上代碼:

AudioSource?audioSource;

IEnumerator?GetAudioClip(string?path)

????{

????????path?=?"file://"?+?path;?

//(目錄如果為Application.persistentDataPath 下必須添加“file://”,這里可以寫(xiě)個(gè)宏)


????????using?(var?uwr?=?UnityWebRequestMultimedia.GetAudioClip(path,?AudioType.MPEG))

????????{

????????????yield?return?uwr.SendWebRequest();

????????????if?(uwr.isNetworkError)

????????????{Debug.LogError("uwrERROR:"?+?uwr.error);?}

? ? ? ? ? ? else

????????????{

????????????????audioSource?=?DownloadHandlerAudioClip.GetContent(uwr);

????????????}

????????}

????????dgeneAudio.Play();

????}

最后,如果解決了你的問(wèn)題是不是應(yīng)該點(diǎn)個(gè)贊再走,逃:)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容