今天下午需要寫一個撥放mp4的test app
結果我無論怎麼改程式都無法撥放!
憤怒!
PS:Android Version :6.0.1
error log:
12-19 16:45:51.146: W/System.err(13135): java.io.FileNotFoundException: /storage/emulated/0/emot_peace.mp4: open failed: EACCES (Permission denied)
12-19 16:45:51.147: W/System.err(13135): at libcore.io.IoBridge.open(IoBridge.java:452)
12-19 16:45:51.147: W/System.err(13135): at java.io.FileInputStream.<init>(FileInputStream.java:76)
12-19 16:45:51.147: W/System.err(13135): at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1090)
12-19 16:45:51.147: W/System.err(13135): at android.media.MediaPlayer.setDataSource(MediaPlayer.java:1041)
...
permission都有開:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
存取檔案的方式也都對:
File dir = Environment.getExternalStorageDirectory().getAbsoluteFile();
File myFile = new File(dir, "xxx.mp4");
String path= myFile.toString();
if(myFile.exists())
Log.d("Mickey", "path = "+path);
所以究竟怎麼回事呢?
其實不是程式本身的問題
1.開啟設定
2.選擇應用程式 -> 點入你的App -> 點入權限
3. 把"儲存"的權限打開
我的mp4就可以正常撥了~~~
不經一事不長一智QQ