android: open failed: EACCES (Permission denied)


1.  問題描述:在Android中,用程序訪問Sdcard時,有時出現“java.io.IOException: open failed: EACCES (Permission denied)", 這是由於沒有增加sdcard對應權限而導致的。

 

2.  解決辦法:

在mainfest文件中,增加以下權限:

 

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

問題解決。

 

3.  補充:

   1).  open failed: EISDIR (Is a directory): 

         這是由於你操作的對象是文件,但是代碼中卻用的是路徑,把路徑“……/……/”最后一個“/”去掉,或者再添加一個文件名,應該就可以了。

   2).  sdcard相關的另外一個權限:

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

   3).  權限的位置:

         <application ......</application>之內,有時在它之外,哪個可以用哪個。


免責聲明!

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



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