2011-05-16 76 views
0

我正在製作一個應用程序來播放帶有搜索欄的歌曲。如果我從原始文件夾播放它的作品,但如果我從SD卡播放歌曲,它會顯示空指針異常。Android上的原始文件夾和sdcard之間的MediaPlayer問題

private MediaPlayer mediaPlayer; 
mediaPlayer = MediaPlayer.create(this, R.raw.t1); // it works 

// switch to sdcard 
mediaPlayer.setDataSource("/sdcard/t1.mp3"); // null pointer exception. 

我不知道是什麼問題。請幫幫我。

回答

3

你需要確保你給setDataSource() 的路徑是完全正確的。要做到這一點,而不是硬編碼的參考「/ SD卡/」最好的辦法,就是用android.os.Environment.getExternalStorageDirectory()

試試這個,我認爲這將有助於你

MediaPlayer mediaPlayer = new MediaPlayer(); 
File path = android.os.Environment.getExternalStorageDirectory(); 
mediaPlayer.setDataSource(path + "/t1.mp3"); 

我希望這可以幫助您

相關問題