我正在尝试在 Android 编程中使用 MediaPlayer 在 Eclipse 中播放音频文件。我需要运行保存在计算机硬盘上的音频文件(.wav 或 .mp3)。我已经尝试了很多东西。我还尝试将文件复制到项目的 res 文件夹中,但没有任何效果。下面是我的代码。如您所见,我尝试了很多方法并发表了一些评论。我第一次得到 IOException 之前。但是在使用 MediaPlayer.create() 之后,我得到了 IllegalStateException。任何帮助将不胜感激。
public void playSound(MainActivity mainActivity){
System.out.println("in playsound");
MediaPlayer mp = null;
FileInputStream fis = null;
try {
//fis = new FileInputStream("C:\\Users\\Anupam-PC\\Downloads\\trailsoundfilerecordings\\jagmeet.wav");
//mp.setDataSource(fis.getFD());
System.out.println("inside try");
//mp.setDataSource("/res/raw/hai.wav");
//mp.setDataSource("C:\\Users\\Anupam-PC\\Downloads\\trailsoundfilerecordings\\jagmeet.wav");
//mp.setDataSource("android.resource://com.example.texttospeech/agreji.mp3");
//mp.setDataSource("agreji.mp3");
mp = MediaPlayer.create(mainActivity, R.raw.hai);
System.out.println("after DS");
mp.prepare();
System.out.println("after prepare");
mp.start();
// fis.close();
} catch (Exception e) {
System.out.println(e);
} finally{
try{
fis.close();
} catch (Exception e){
}
}