write requestpermissions permission example dangerous check card android android-5.0-lollipop android-permissions android-file

requestpermissions - Android 5(HTC) EACCES(Permiso denegado)



requestpermissions android example (4)

Agregue permiso a sus permisos de archivo manifest.xml

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

la aplicación no puede crear una folder/file en el almacenamiento externo de android 5(HTC HTC6525LVW os version: 5.0.1) en el directorio de la aplicación.

La carpeta principal se devuelve mediante el [getExternalFilesDirs(String type)][1] .

Sdcard se monta.

¿Alguien más tiene este problema o sugerencia de cómo resolverlo?

(Desafortunadamente no tengo este dispositivo para probarlo más)

Edición: De un usuario, sé que antes de este error, ella cifró la tarjeta SD y luego la formateó.


Algunas ideas potenciales sobre lo que lo causó:

  1. Si el teléfono se ejecuta en modo de almacenamiento USB cuando está conectado a su computadora, aún puede implementar / depurar como de costumbre, pero las operaciones de escritura fallarán

  2. Le faltaba un permiso: en su archivo de manifiesto debe verificar si tiene <permission name=”android.permission.WRITE_EXTERNAL_STORAGE” >

  3. Permisos en la ubicación incorrecta: asegúrese de que su etiqueta de permiso (en manifiesto) se encuentre fuera de la aplicación

  4. Escribir en la carpeta de data puede causar problemas como este, así que asegúrese de escribir en una sdcard y no en data

Esto es todo lo que pude pensar. Espero eso ayude :)


Devuelve la ruta del directorio que contiene los archivos de la aplicación en el almacenamiento externo. Devuelve nulo si el almacenamiento externo no está montado actualmente, por lo que no pudo garantizar que la ruta exista; Tendrá que volver a llamar a este método cuando esté disponible.

La otra opción es que puede verificar si el almacenamiento externo está disponible:

String state = Environment.getExternalStorageState(); File filesDir; // Make sure it''s available if (Environment.MEDIA_MOUNTED.equals(state)) { // We can read and write the media filesDir = getExternalFilesDir(null); } else { // Load another directory, probably local memory filesDir = getFilesDir(); }


Tengo el mismo problema pero encuentro las soluciones exactas. Espero que esta respuesta te sea útil.

//Create Folder File folder = new File(Environment.getExternalStorageDirectory().toString()+"/Aqeel/Images"); folder.mkdirs(); //Save the path as a string value String extStorageDirectory = folder.toString(); //Create New file and name it Image2.PNG File file = new File(extStorageDirectory, "Image2.PNG");