Añadir imágenes a la galería

Mi aplicación almacena imágenes en una carpeta privada /sdcard/Android/data/com.mypackage.myapp/files/. Quiero agregar esos cuadro a la galería. He intentado agregarlos al almacén de los medios pero crea una carpeta para cada carpeta que tengo en mi directorio privado. Quiero más control sobre el nombre / estructura de los álbumes. Creo que se supone que debo usar un proveedor de contenido para esto, pero no estoy seguro de qué hacer a continuación. El fragmento que utilizo es el siguiente:

ContentValues values = new ContentValues(4); long current = System.currentTimeMillis(); values.put(MediaStore.Images.Media.TITLE, file.getName()); values.put(MediaStore.Images.Media.DATE_ADDED, (int) (current / 1000)); values.put(MediaStore.Images.Media.MIME_TYPE, "image/jpg"); values.put(MediaStore.Images.Media.DATA, file.getAbsolutePath()); ContentResolver contentResolver = context.getContentResolver(); Uri base = MediaStore.Images.Media.EXTERNAL_CONTENT_URI; Uri newUri = contentResolver.insert(base, values); // Notify the media application on the device context.sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, newUri)); 

Esto funciona muy bien, pero no me da control sobre la estructura de carpetas. ¿Cómo puedo agregar mis imágenes a la galería con una estructura de carpetas diferente a la estructura de archivos como lo hace google con "picasa" (y cómo poner un icono personalizado para carpetas como el icono de picasa a continuación)

Introduzca aquí la descripción de la imagen

¿Has probado a agregar el campo del artista:

values.put(MediaStore.Images.Media.ARTIST, "YourApp");

No estoy seguro de que pueda designar el icono, por lo que siempre será una carpeta. El soporte de Picasa está incorporado.

  • Android MediaStore sqlite db ubicación
  • ¿Cómo consultar canciones en listas de reproducción en Android SDK?
  • Archivos no eliminados al borrar y aún mostrados en Listview
  • Uso del URI de contenido con ACTION_VIDEO_CAPTURE
  • Por qué Images.Media.insertImage devuelve null
  • Inserción de un vídeo en MediaStore
  • Obtener la lista de galerías de fotos en Android
  • Filtra un managedQuery por extensión de archivo (o, alternativamente, tipo de archivo) para un Cursor de Android
  • No puede solicitar permiso READ_EXTERNAL_STORAGE
  • Obtener nombre de archivo y ruta de URI de mediastore
  • Cómo obtener datos de MediaStore.File y MediaStore.File.FileColumn
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.