我过去常常在RoboVM中加载音频文件没有问题,但现在我正在使用Multi-OS Engine在iOS中运行libGDX游戏。
这是我加载音频文件的代码:
Gdx.audio.newSound(Gdx.files.internal("sounds/pop.mp3"));
这就是我在控制台中看到的:
2017-04-07 17:27:13.871271-0500 FacesChess [2258:359966] OAL错误: - [OALAudioFile initWithUrl:reduceToMono:]:无法打开url文件:///var/containers/Bundle/Application/344E150B-DDCA-45A7-B9A1-3EA14C60ECE6/FacesChess.app/assets/sounds/pop.mp3 (错误代码0x7768743f:未知的ext音频错误)2017-04-07 17:27:13.871403-0500 FacesChess [2258:359966] OAL错误: - [OALSimpleAudio internalPreloadEffect:reduceToMono:]:无法加载效果 /var/containers/Bundle/Application/344E150B-DDCA-45A7-B9A1-3EA14C60ECE6/FacesChess.app/assets/sounds/pop.mp3
Moe插件版本:1.3.3 LibGDX版本= 1.9.6
我将我的mp3文件放在android模块的assets文件夹中。我的音频文件存在问题,图像也在同一个文件夹中,没有问题。
我在其他question中读到了这个:"在我的iOS项目中,iOS拾取声音的唯一地方是目录/ data / sounds"。但我还没有发现如何从数据文件夹中加载文件。我不明白iOS文件系统是如何工作的,可以找到文档here。
答案 0 :(得分:0)
问题是iOS音频框架无法从MOE生成的application.jar加载资源。因此,必须手动将音频资源添加到Xcode项目中。
为此,将资源文件夹从android / assets拖到Xcode中,确保选择“Create Folder References”。
该文件夹必须命名为assets,因为LibGDX使用硬编码路径。文件夹应在Xcode中以蓝色显示,否则层次结构将无法正确捆绑。
感谢sAm_vdP获取badlogicgames.com forum中的答案。