问题是libGDX处理音乐的方式。我将在GitHub Issue
1654上引用badlogic文章。
Android的情况更加复杂和令人难过。在Android上,我们使用系统功能来播放音频,即MediaPlayer。这些Android软件在后台使用了设备依赖驱动程序(音频驱动程序,自定义编解码器实现等)。这意味着我们受到三星等硬件供应商及其驱动程序实施的支配。
该问题不仅限于libGDX,它是Android问题18756。
解
您的音轨在内存大小方面既短又小,因此在这种情况下使用libGDX声音实际上更好,并且没有此漏洞。
音乐->长而大的文件,未加载到内存中
声音->大小不一的文件,已加载到内存中
使用Sound类并循环播放。例:
long id;...public void create() { music = Gdx.audio.newSound(Gdx.files.internal("soundtrack.ogg")); id = music.loop(); //Sound may not be ready here!}public void render() { if(id == -1) id = music.loop();}


