无法创建文件夹和文件

时间:2017-10-23 12:02:09

标签: android android-manifest android-permissions

我正在尝试在设备的内部存储中创建文件夹,并且遇到一些问题。我无法使用:

创建目录
   String rootPath=Environment.getExternalStorageDirectory().getPath()+"/test";
    File file=new File(rootPath);
     if(!file.exists()){
         file.mkdir();
    }

file.mkdir返回false

我有这样的权限:

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

非常感谢您的回答!

2 个答案:

答案 0 :(得分:3)

所以真的,正如你们所有人在Android Marshmallow(API 23)或更高版本中所说的那样,我们需要询问运行时权限。

要解决此问题,请使用call:

ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, 1);
您的onCreate()方法

中的

感谢大家的帮助!

答案 1 :(得分:0)

您可以使用

  File sampleDir = new File(Environment.getExternalStorageDirectory(), "/test");
        if (!sampleDir.exists()) {
            sampleDir.mkdirs();
        }