【问题标题】:Error loading audio in LibGDX using MOE使用 MOE 在 LibGDX 中加载音频时出错
【发布时间】:2017-09-03 10:17:05
【问题描述】:

我以前在 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:未知的分机音频错误) 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

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

我将我的 mp3 文件放在了 android 模块的 assets 文件夹中。我只是音频文件有问题,图像也在同一个文件夹中,没有问题。

我在其他question 中读到:“在我的 iOS 项目中,iOS 接收声音的唯一地方是目录 /data/sounds”。但我还没有发现如何从数据文件夹加载文件。我不明白iOS文件系统是怎么工作的,文档可以找到here

【问题讨论】:

标签: ios libgdx intel robovm


【解决方案1】:

问题是 iOS 音频框架无法从 MOE 生成的 application.jar 加载资产。因此,必须手动将音频资源添加到 Xcode 项目中。

为此,请将资产文件夹从 android/assets 拖到 Xcode 中,确保选择“创建文件夹引用”。

该文件夹必须命名为 assets,因为 LibGDX 使用硬编码路径。文件夹在 Xcode 中应该显示为蓝色,否则层次结构将无法正确捆绑。

感谢 sAm_vdP 在 badlogicgames.com forum 中的回答。

【讨论】:

    猜你喜欢
    • 2012-05-31
    • 2020-08-27
    • 1970-01-01
    • 2015-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-28
    • 2012-03-23
    相关资源
    最近更新 更多