Android平台Libgdx Sound偶尔重复播放问题求助
Android平台Libgdx播放Sound偶尔重复两次的问题解决
在Android平台使用Libgdx播放Sound时,声音偶尔会重复播放两次。该问题常出现在游戏首次加载时,或声音停止播放约5秒后再次播放的场景——比如暂停5秒后点击播放,声音会触发两次而非一次。
我制作了一个演示应用,点击按钮本应播放一次点击音效,但存在上述异常:首次点击时音效播放两次,后续两次点击正常,暂停几秒后再次点击又出现重复播放问题。
演示源码如下:
package com.soundtest.example; import com.badlogic.gdx.ApplicationAdapter; import com.badlogic.gdx.Gdx; import com.badlogic.gdx.InputAdapter; import com.badlogic.gdx.audio.Sound; public class SoundExample extends ApplicationAdapter { @Override public void create () { final Sound clickSound = Gdx.audio.newSound(Gdx.files.internal("click.ogg")); Gdx.input.setInputProcessor(new InputAdapter() { @Override public boolean touchDown(int x, int y, int pointer, int button) { System.out.println("Clicked!"); clickSound.play(); return true; } }); } }
我尝试过以下方案,但问题仍未解决:
- 更换音频格式、音效文件、延长音效末尾静音时长
- 尝试使用
AsynchronousAndroidAudio,代码如下:
@Override public AndroidAudio createAudio(Context context, AndroidApplicationConfiguration config) { return new AsynchronousAndroidAudio(context, config); }
请问如何让Sound仅正确播放一次?
内容的提问来源于stack exchange,提问作者Eric
相关产品推荐
相关产品推荐

