我使用Libgdx创建了一个非常简单的游戏。当使用按下按钮时,屏幕上会有一些按钮播放特定的声音文件。
我将声音初始化为:
Sound mysound = Gdx.audio.newSound(Gdx.files.internal("sounds/mysoundfile.mp3"));
我这样玩:
mysound.play();
在Windows桌面,Mac桌面(El Capitan)和Android(在Galaxy Tab 10.1和Sony Z3上测试)以及我的iPod Touch上,一切都运行良好。
然而,当我在iPad Air(MD785LLB)上运行游戏时,声音将无法播放。音量调高,我可以在设备上播放其他音乐和声音(游戏外)并且工作正常。但游戏不会发出任何声音。没有记录任何错误消息,但扬声器没有播放任何内容。
最初我的声音文件是mp3,但我也试过转换为wav并且没有改变行为,仍然没有播放声音。
编辑:游戏运行正常并在iPad Air和iPad Air 2模拟器上播放声音。模拟器列在版本9.2。
答案 0 :(得分:1)
事实证明,iPad的音量按钮附近有一个硬件开关。此开关用作某种静音和屏幕旋转锁定。
Libgdx / RoboVM以及其他类型的游戏似乎受到此交换机静音功能的影响。但是一些其他类型的声音不像播放音频文件那样,并且在safari中的页面上有html5 <audio>
标签,无论交换机处于什么位置,这两种声音仍然有效。
我移动了开关,直到没有显示橙色,然后游戏才能成功播放声音。