2011-05-06 174 views
0

我使用以下代码播放SD卡中的音频。但它不起作用,即使不抛出错误。我的文件位于以下路径/sdcard/media/blueeye.mp3中。有什么建议么。播放音频文件

public void audioPlayer(){ 
    //set up MediaPlayer  
    MediaPlayer mp = new MediaPlayer(); 

    try { 
     mp.setDataSource(mp.setDataSource(getExternalFilesDir() + "/media/blueeye.mp3");); 
    } catch (IllegalArgumentException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } catch (IllegalStateException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } catch (IOException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 
    try { 
     mp.prepare(); 
    } catch (IllegalStateException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } catch (IOException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 
    mp.start(); 
} 

回答

0

我觉得应该是/mnt/sdcard/media/blueeye.mp3并请使用getExternalFilesDir()

mp.setDataSource(getExternalFilesDir() + "/media/blueeye.mp3"); 

另外,如果您想设置自己的onErrorListener,你将能够看到易的问题是什么。