Android MediaPlayer setDataSource failed


今天在嘗試使用MediaPlayer播放音樂時出了一個問題,在使用

mp.setDataSource(this,Uri.parse("/sdcard/Music/adele.mp3"));

這行代碼為MediaPlayer設置要播放的音樂地址時,代碼執行到這一行總是會報錯,錯誤信息為:setDataSource failed

一下子就懵逼了,為何會failed沒說啊,在網上查了些資料各種嘗試后沒什么用,后來改用其中的一個重載方法setDataSource(FileDescription fileDescription)終於給出了一個像樣的錯誤信息: open failed: EACCES (Permission denied)

有了這個后就好解決了,於是用百毒搜了下,在這篇文章(傳送門)里找到了答案:由於我是要播放sd卡中的音樂,所以需要寫sd卡權限(為何播放音樂需要寫權限?),需要在清單文件里面添加如下權限即可:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>

切記切記~

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM