Estás a punto de entrar en semitrance escuchando tu música favorita. En ese momento entra la siguiente canción y de repente estás oyendo a tu hermano, su señora e hijos destrozando a todo volumen el "cumpleaños feliz". Está sonando un archivo de voz que te enviaron hace 3 meses. Queda claro que no todos los audios deben estar en tu biblioteca de música. Del mismo modo que en tu lista de pelis no deberían estar los vídeos publicitaros de una app -mal hecha- o tal vez prefieres que en la galería de fotos se muestren las fotos del whatsapp pero de un tiempo a esta parte por alguna misteriosa actualización no la ves.
Resumen para los AnsiaViva
Controla qué contenido multimedia se muestra en tus colecciones con el archivo .nomedia
El Almacenamiento de medios (MediaStore)
Todo dispositivo Android tiene una aplicación llamada Almacenamiento de medios. Su función es chequear periódicamente los contenidos multimedia de tu dispositivo y con esta información montar una base de datos que usarán las demás aplicaciones. Cuando abres la galería de fotos o el reproductor de música la app sólo tiene que acceder a la base de datos de Almacenamiento de medios en lugar de escanear todo el dispositivo para mostrar el contenido del móvil. Esto supone un importante ahorro de batería y sobre todo de tiempo. Controlar qué contenido aparece en esa base de datos es tan sencillo cómo añadir o eliminar un fichero vacío llamado .nomedia. Nótese que en Android los archivos que empiezan con . son archivos ocultos.
Cuando añades un fichero .nomedia en una carpeta le estás indicando a Almacenamiento de medios que no incluya el contenido de esa carpeta -ni sus subcarpetas- en la base de datos de medios. Que se dé la vuelta y no siga buscando ahí.
Una carpeta sin fichero .nomedia será escaneada de principio a fin. No encontrar este fichero le indica a Almacenamiento de medios que en esa carpeta -y subcarpetas- hay contenido que quieras añadir a tus bibliotecas multimedia.
Quitar o añadir contenido multimedia de tus bibliotecas
Un caso de uso sería por ejemplo Whatsapp. En versiones anteriores de Whatsapp encontrabas todo el contenido multimedia en tus bibliotecas. Un mensaje de voz aparecía entre tu música. Lo mismo pasaba con tus fotos y vídeos. Whatsapp añadió el fichero .nomedia en la carpeta WhatsApp/Media y en todas sus subcarpetas (Sí... con crearla en la primera es más que suficiente. En fin, así de bien lo hacen todo). De esta manera se aseguran que ningún archivo multimedia se registre en la base de datos. Si tú quieres que los vídeos y fotos se muestren en tu galería pero no la música lo que hay que hacer eliminar el fichero .nomedia de la carpeta general y de todas las subcarpetas que quieras mostrar.
Si quieres ocultar el contenido descargado de Internet en tus bibliotecas, sólo tienes que crear el fichero .nomedia en la carpeta Download. Haz lo mismo en cualquier carpeta que quieras ocultar.
Ocultar archivos multimedia descargados
El funcionamiento exacto de Almacenamiento de medios depende de la versión de Android. En las versiones más antiguas en cada arranque escanea el dispositivo completo. Las más nuevas sólo cuando detecta cambios. Aún así se puede establecer por norma general que al añadir el fichero .nomedia el efecto será inmediato y se borrará el contenido afectado de la base de datos. Pero al quitar el fichero no se recalcula la base de datos y tendrás que forzar el escaneo. Bien reiniciando el móvil en versiones antiguas, bien entrando en ajustes > aplicaciones > todas > almacenamiento de medios > forzar detención > borrar caché > borrar datos y reiniciar el móvil en las versiones más nuevas. Reescanear suele llevarle un buen rato dependiente sobre todo del tamaño de la memoria y la tarjeta SD.
Fuerza que se reconstruya la base de datos
El explorador de archivos utilizado es el ES Explorador de Archivos. Aquí el porqué: MicroReview y el enlace para Descargarlo.