2017-04-07 50 views
0

我用來在RoboVM中加載沒有問題的音頻文件,但現在我正在使用Multi-OS Engine在iOS中運行libGDX遊戲。使用MOE在LibGDX中加載音頻時出錯

這是我的代碼加載音頻文件:

Gdx.audio.newSound(Gdx.files.internal("sounds/pop.mp3")); 

這是我在控制檯中看到:

2017-04-07 17:27:13.871271-0500 FacesChess[2258:359966] OAL Error: -[OALAudioFile initWithUrl:reduceToMono:]: Could not open url file:///var/containers/Bundle/Application/344E150B-DDCA-45A7-B9A1-3EA14C60ECE6/FacesChess.app/assets/sounds/pop.mp3 (error code 0x7768743f: Unknown ext audio error) 2017-04-07 17:27:13.871403-0500 FacesChess[2258:359966] OAL Error: -[OALSimpleAudio internalPreloadEffect:reduceToMono:]: Could not load effect /var/containers/Bundle/Application/344E150B-DDCA-45A7-B9A1-3EA14C60ECE6/FacesChess.app/assets/sounds/pop.mp3

萌插件版本:1.3.3 LibGDX版本1.9.6 =

我把我的mp3文件放在android模塊中assets文件夾中。我遇到了音頻文件的問題,圖像也在同一個文件夾中,沒有問題。

我在其他question閱讀:「在我的iOS項目中,唯一的iOS拾取聲音位於目錄/ data/sounds」。但我還沒有發現如何從數據文件夾加載文件。我不明白iOS文件系統如何工作,文檔可以找到here

+1

也許這可以幫助你? http://www.badlogicgames.com/forum/viewtopic.php?f=11&t=25733#p101561 –

回答

0

問題是iOS音頻框架無法從MOE生成的application.jar加載資源。因此,音頻資源必須手動添加到Xcode項目中。

爲此,請將資產文件夾從android /資產拖放到Xcode中,確保選擇「創建文件夾引用」。

Make sure to select "Create Folder References"

該文件夾,因爲LibGDX使用硬編碼的路徑將被命名資產。文件夾應該在Xcode中顯示爲藍色,否則層次結構將無法正確綁定。

This is how folder hierarchy should look like

感謝sAm_vdP在badlogicgames.com forum答案。