I have set permission in manifest:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
I tried create directory with this code:
// test external storage root
String myDir = Environment.getExternalStorageDirectory().toString();
File f = new File(myDir);
if(f.exists()) {
Log.d("MyApp", "folder exists: " + f.toString());
}else {
Log.d("MyApp", "folder does not exist: " + f.toString());
}
// try create folder
myDir += File.separator + "MyFolder";
f = new File(myDir);
if(f.exists()) {
Log.d("MyApp", "folder exists: " + f.toString());
}else{
Log.d("MyApp", "folder does not exist: " + f.toString());
if(f.mkdirs()){
Log.d("MyApp", "folder created: " + f.toString());
}else{
Log.d("MyApp", "cannot create: " + f.toString());
}
}
On tablets with Android 4 and 5 is this functionally, but on Nexus 5X with Android 6.0 looks like:
D/MyApp: folder exists: /storage/emulated/0
D/MyApp: folder does not exist: /storage/emulated/0/MyFolder
D/MyApp: cannot create: /storage/emulated/0/MyFolder
Is in Nexus 5X or Android 6.0 some sweet secret I don't know?