2015-10-07 41 views
1

我有一個問題,當我想播放存儲卡中的MP3文件在銀河note3,galaxy s3和galaxy s5上顯示「Unknown error media file」如何解決問題?該文件與Android音樂播放器,但在我的程序不能正常工作.thanks當播放本地mp3時出現未知的錯誤媒體文件

MediaPlayer mp = new MediaPlayer(); 
mp.setDataSource(PATH_TO_FILE); 
mp.prepare(); 
mp.start(); 

遺憾的英語不好

+0

能否請您發表日誌貓嗎? – KishuDroid

+0

當媒體播放器捕獲錯誤顯示「MEDIA_ERROR_UNKNOWN(1,-2147483648)」,但mp3文件工作使用android音樂播放器 –

回答

0

事實證明,錯誤-2147483648 normaly打表示未知錯誤。這可能與mp3編碼有關,但它也值得檢查文件路徑是否存在以及MediaPlayer是否有權讀取它。

我的問題是我用Context.MODE_PRIVATE(默認)編寫我的文件。

openFileOutput(filename, Context.MODE_PRIVATE); 

這表示只有您的應用程序可以訪問該文件。我不知道具體如何或爲什麼,但在Jelly Bean及以上版本中,似乎允許視頻視圖訪問您指定的文件,就像它是您的應用程序一樣,但在Jelly Bean之前,視頻視圖嘗試打開文件在它自己的上下文中(而不是你的應用程序的)。由於該模式是私人的,因此失敗。

一種解決方法是用Context.MODE_WORLD_READABLE編寫文件,現在已棄用。這表示任何人都可以在該路徑上打開文件。這顯然是不安全的,也是令人沮喪的。

這解決了我的問題,並希望你也是!

試試這個:

MediaPlayer mpintro =  MediaPlayer.create(this,Uri.parse(Environment.getExternalStorageDirectory().getPath()+ "/Music/intro.mp3"));// example for path 
     mpintro.setLooping(true); 
     mpintro.start(); 
+0

感謝您的評論...我使用andriod下載管理器下載mp3文件,我不喜歡這個問題每件事情都可以正常工作,但在某些設備上不能播放......我不知道我在做什麼來解決它:'( 這是我在Play商店的應用https://play.google.com/store/apps/details?id= com.RozhanTeam.MuhammadMalaFayaq –

+0

這是由於編碼問題。請參考http://developer.android.com/guide/appendix/media-formats.html – KishuDroid

+0

如何解決它KishuDroid?mp3支持Android設備,但在我的程序不能播放 –

相關問題