Android java.io.FileNotFoundException: open failed: EACCES (Permission denied)

时间:2021-04-28 08:35:08

    在读写Android SD卡时,出现这个错误的原因是因为没有权限。解决步骤如下:

  1. 确定你的App的AndroidManifest.xml文件中写有SD卡读写权限,这是必须的:
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

  2. 如果你的应用需要创建文件或者目录,还需要添加如下权限:
    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
    
    
  3. 确定你的手机的SD卡,可以读,通过如下代码判断:
    File sd = Environment.getExternalStorageDirectory();
    boolean can_write = sd.canWrite();

  4. 确定你的手机没有连接到电脑,因为SD卡只能被手机访问或者被电脑访问,不能二者同时访问。

参考资料:

  1. 点击打开链接