Guardar un ImageView en la Galería – El código no funciona

Esta es mi primera pregunta aquí. He buscado mi duda. He encontrado preguntas similares, pero no tengo exactamente mi respuesta. Así que por favor perdóname si he hecho algo mal. Estoy tratando de guardar una imagen de un ImageView en mi aplicación a una carpeta en mi tarjeta SD. Aquí está el código: –

public void save(View view) { myImage.setDrawingCacheEnabled(true); Bitmap imgV = myImage.getDrawingCache(); String root = Environment.getExternalStorageDirectory().toString(); File myDir = new File(root + "/AVP_saved"); String fname="Image.png"; File file = new File(myDir, fname); try { FileOutputStream out = new FileOutputStream(file); imgV.compress(Bitmap.CompressFormat.PNG, 90, out); out.flush(); out.close(); Toast.makeText(this, "Image Downloaded", 7000).show(); } catch (Exception e) { e.printStackTrace(); Toast.makeText(this, e.getMessage(), 8000).show(); } } 

El método 'save' es el método asignado a un botón. 'MyImage' es el ImageView encontrado por su id. Ya he establecido los permisos en el manifiesto. La cosa es que la imagen no se salva y dice que la ruta no existe. Cuando yo mismo crear la carpeta "AVP_saved", entonces la imagen se guarda. ¿Qué tengo que editar en este código de tal manera que la aplicación crea la carpeta por sí mismo cuando hago clic en el botón?

¡Gracias por tu tiempo!

Agregue este código después de File myDir = new File(root + "/AVP_saved");

 if(!myDir.exists()) { mydir.mkdir(); //you can else call mkdirs() if you have to create a complete directory hierarchy } 

Parece que en Java, no es posible crear una jerarquía de directorios creando sólo un archivo en ella. Con esto, usted creará su directorio sólo si no existe (tenga cuidado, si el directorio existe, pero es un archivo, se lanzará una excepción tal vez, por lo que puede buscar myDir.isDirectory () también).

  • Cómo utilizar Ant a auto renombrando archivo apk de salida?
  • Cómo encontrar texto visible en la vista de texto
  • Agregar múltiples entradas a un HashMap a la vez en una sentencia
  • La aplicación comienza a buscar el GPS justo al iniciar la aplicación, no cuando es necesario
  • "Desafortunadamente, Launcher ha parado" en Android Nexus 6 emulador
  • Android: ¿Cómo capturar los extras de Intent si la actividad ya se está ejecutando?
  • Java: Lectura de un archivo, falta la primera línea
  • Obtener la información actual de onClickListener de un objeto de Android View
  • Usos-Permiso vs Usos-Característica
  • Java MimetypesFileTypeMap siempre devuelve la aplicación / octet-stream en el emulador de Android
  • Analizar datos JSON utilizando JSONReader o JSONObject / JSONArray
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.