Android 使用MediaPlayer播放音频文件

Android 使用MediaPlayer播放音频文件,android,audio,media-player,Android,Audio,Media Player,您好,我是一名android和java新手,想知道是否有更好的方法来完成以下工作: 我目前有250个短音频文件(.3gp),我把它们放在我的res/raw文件夹中,根据特定的条件,我想播放特定的音频文件。例如,如果正在单击的按钮的文本是单词“and”,我想播放and.3gp声音文件 以下是我用来完成我想做的事情的代码: if(word.equals("No")) { MediaPlayer mp = MediaPlayer.create(HomeActivity.this,R.ra

您好,我是一名android和java新手,想知道是否有更好的方法来完成以下工作:

我目前有250个短音频文件(.3gp),我把它们放在我的res/raw文件夹中,根据特定的条件,我想播放特定的音频文件。例如,如果正在单击的按钮的文本是单词“and”,我想播放and.3gp声音文件

以下是我用来完成我想做的事情的代码:

if(word.equals("No"))
{   
    MediaPlayer mp = MediaPlayer.create(HomeActivity.this,R.raw.no);
    mp.start();
    mp.setOnCompletionListener(listener );
}
else if(word.equals("And"))
{
    MediaPlayer mp = MediaPlayer.create(HomeActivity.this,R.raw.and);
    mp.start();
    mp.setOnCompletionListener(listener );
}

.....

到目前为止,上面的代码运行良好,但是我想知道我是否可以在没有250个else if条件的情况下完成这项工作。是否有方法将音频文件传递到MedialPlayer。通过Uri按文件名创建?如果是,我该怎么做?谢谢。

您可以创建一个哈希函数,将字符串键映射到uri

循环遍历原始文件夹中的所有文件,并删除文件扩展名,然后进行测试。

看起来我可以通过执行类似的操作来实现这一点,谢谢。今晚我要试试这个。