【问题标题】:Android - Can't make a directoryAndroid - 无法创建目录
【发布时间】:2016-06-10 19:00:35
【问题描述】:

这是我的代码:

File dir = new File(Environment.getExternalStorageDirectory(), "newDir");
if (!dir.exists()) {
    System.out.println(dir.mkdirs());
}

它总是打印错误。

在我的 AndroidManifest.xml 中有以下行:

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

我还尝试了代码第一行的以下变体:

File dir = new File(Environment.getExternalStorageDirectory() + File.separator + "newDir");

File dir = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/newDir");

File dir = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/newDir/");

File dir = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "newDir");

File dir = new File(Environment.getExternalStorageDirectory() + "newDir");

File dir = new File(Environment.getExternalStorageDirectory().toString() + "/newDir");

没有任何作用。

编辑:设备操作系统版本为 6.0.1(Nexus 9 平板电脑)。

【问题讨论】:

  • 请注明设备操作系统版本。

标签: android file permissions directory storage


【解决方案1】:

问题是由于自 Android M 以来更改了权限模型。 即使您已在 Manifest 文件中声明了权限,您也需要以编程方式请求权限。

查看我的回答 herehere 了解更多详情。

【讨论】:

    猜你喜欢
    • 2017-01-28
    • 2017-04-20
    • 1970-01-01
    • 2016-11-25
    • 1970-01-01
    • 1970-01-01
    • 2023-03-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多