Android在延迟后播放声音

noo*_*ber 4 audio android

我必须在GUI事件上播放声音,例如点击按钮等.为此,我从WebView调用以下本机代码:

MediaPlayer _SoundPlayer = new MediaPlayer();
private void playSound(String sound)
{
    _SoundPlayer.reset();
    try
    {
        AssetFileDescriptor afd = getAssets().openFd("sound/" + sound + ".mp3");
        _SoundPlayer.setDataSource(afd.getFileDescriptor(), afd.getStartOffset(), afd.getLength());
        _SoundPlayer.prepare();
        _SoundPlayer.start();
    }
    catch (Exception e) { }
}
Run Code Online (Sandbox Code Playgroud)

问题是事件和声音之间有500毫秒的延迟.我可以以某种方式优化播放声音,也许,为每种声音创建专用的MediaPlayer实例?

问候,

Raj*_*esh 6

使用SoundPool低延迟媒体播放,而不是MediaPlayer.