Rahul Katte
Rahul Katte

Reputation: 103

Unable to create a folder programatically

Below is the code that I'm using

String root = Environment.getExternalStorageDirectory().getAbsolutePath().toString();
File filepathname = new File(root+"/newfolder");
if(filepathname.mkdir())
    Toast.makeText(this,"directory created", Toast.LENGTH_SHORT).show();
else
    Toast.makeText(this,"directory not created", Toast.LENGTH_SHORT).show();

I tried this code in Moto E (running Lollipop) and Nexus 5 (running marshmallow). Folder gets created in Moto but not in Nexus 5.

I have been able to create folder in Nexus 5 before upgrading to Marshmallow.

Is this a known problem in android M? Is there a work around? Or can anyone spot any problem in the code.

Notes:

  1. The above mentioned code is in the onCreate() of my launcher activity,

  2. The below permission is also there in the manifest file:

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    
  3. "newfolder" does not exist already.

Upvotes: 0

Views: 2518

Answers (1)

Artur Szymański
Artur Szymański

Reputation: 1648

In my opinion you dont have rights to create folder. If your application target is 23 or above you have to read about new runtime permissions.

Here you can find official documentation about it.

Upvotes: 4

Related Questions