2011-05-24 106 views
2

您好我是一个Android和Java的新手,想知道是否有这样做的更好的办法如下:播放音频文件,MediaPlayer的

我目前有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如果条件。有没有办法将音频文件传递给MedialPlayer.Ure通过文件名创建?如果是的话,我该怎么做?谢谢。

回答

2

您可以通过您的所有文件串钥匙URI

+2

它看起来像我可以通过做类似于这个http://www.41post.com/1301/programming/how-to-get-android-local-files-uri谢谢。今晚我会试试这个。 – atbebtg 2011-05-24 15:45:26

1

循环对应一个哈希函数在您的原始文件夹,删除文件的扩展名,然后针对该测试。