I'm trying to create a directory in an SD card using the below code.
String state = Environment.getExternalStorageState();
    if (state.equals(Environment.MEDIA_MOUNTED)) {
        String secondaryStore = System.getenv("SECONDARY_STORAGE");
        File videoDirectory = new File(secondaryStore + File.separator +"video_files");
        if(!videoDirectory.exists()){
            boolean sd_mkdirs = videoDirectory.mkdirs();
            if(sd_mkdirs){
                Log.d(TAG,"file Created");
            }
        }
    }else{
        File videoDirectory = new File(Environment.getExternalStorageDirectory() + File.separator + "video_files");
        if(!videoDirectory.exists()){
            boolean internal_mkdirs = videoDirectory.mkdirs();
            if(internal_mkdirs){
                Log.d(TAG,"file Created");
            }
        }
    }
This code checks whether or not the SD card is mounted. If true It creates a directory in the SD card, otherwise in internal storage. However, when it is suppossed to make a directory on the SD card _mkdirs returns false. What am I doing wrong ?
This is my AndroidManifest file. I think I included the permission to write.
<?xml version="1.0" encoding="utf-8"?>
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
 
    