¿Cómo actualizo / vuelvo a escanear la memoria SD en Android 4.4 KitKat?

13

La semana pasada recibí la actualización oficial de OTA KitKat para mi Nexus 4 y desde entonces no he podido volver a escanear la tarjeta SD. He probado varias aplicaciones diferentes para esta tarea, pero todas se bloquean al abrirlas. Un poco de investigación muestra un puñado de usuarios con el mismo problema.

Estas son las aplicaciones que he probado:

  • Rescan Media ( Aditya Talpade )
  • ¡Vuelva a explorar la tarjeta SD! ( DETENCIÓN )
  • Volver a analizar la tarjeta de medios SD ( RADEFFFACTORY )
  • SDrescan ( Benjamin Rosseaux ) mi antiguo recurso de Jelly Bean

Cada aplicación se bloquea cuando se inicia. ¿Alguien puede actualizar su memoria SD en KitKat?

Zippanova
fuente

Respuestas:

13

No funcionará para detectar archivos eliminados, pero acabo de poner una aplicación en Play Store que funcionará en archivos nuevos y actualizados: https://play.google.com/store/apps/details?id=com. gmail.jerickson314.sdscanner

Utiliza una solución alternativa inspirada en la respuesta de Dan Hulme: usando la API que es solo para un archivo específico, pero generando manualmente una lista recursiva de archivos en la tarjeta. Esto requiere solo el permiso de lectura en la tarjeta SD, no la raíz, y tiene el agradable efecto secundario de permitir un indicador de progreso confiable.

Jeremy Erickson
fuente
Esta debería ser la respuesta aceptada; La respuesta de Dan no resuelve el problema. La otra mitad del problema, deshacerse de los archivos eliminados, se resuelve borrando manualmente la memoria caché y los datos del servicio de medios. Es fácil entrar en la situación en la que se ve obligado a volver a analizar, por ejemplo, cuando cambia el nombre de una carpeta.
Barry Kelly
Desde que escribí esta respuesta, implementé la funcionalidad para leer la base de datos de medios. Por lo que puedo decir, está funcionando para detectar archivos eliminados. A veces, los archivos eliminados no se muestran en absoluto en la base de datos de medios, lo que sospecho significa que Google Play Music los está limpiando o algo antes de que SD Scanner llegue a ellos.
Jeremy Erickson
Molesto, tuve que copiar los tonos de llamada predeterminados, las alarmas, los sonidos de notificación, etc. a las ubicaciones debajo de / sdcard para que la Configuración los vuelva a encontrar.
Barry Kelly
Lamentablemente, la aplicación ya no parece estar en la tienda
Edward Falk
6

Ya no puedes usar ninguna aplicación como esta. Debido a que muchas aplicaciones abusaron de la MEDIA_MOUNTEDintención de transmisión para causar una nueva exploración de todo el sistema de archivos (agotar la batería) después de que solo cambiaron un archivo, KitKat tiene una nueva restricción de que solo las aplicaciones del sistema pueden transmitir esta intención. Las aplicaciones que lo prueban obtendrán un SecurityException, que por defecto provoca el diálogo "... se ha detenido".

Hay un mecanismo alternativo para que una aplicación diga que ha cambiado un archivo en particular y hace que ese archivo se vuelva a analizar (no de forma recursiva), pero (a) no hay reemplazo que escanee un sistema de archivos completo, porque se abusaría de la misma manera ; y (b) depende de la aplicación llamar a esto. No es algo que pueda cambiar como usuario.

Una aplicación que usara podría hacer que esto funcione de la misma manera que 4.3 y versiones anteriores, pero de nuevo, necesitaría estar específicamente escrito para solicitar root. Rootear el dispositivo no haría que sus viejas aplicaciones comiencen a funcionar nuevamente.

Para obtener más detalles técnicos, consulte ¿Cómo activar MediaScan en Nexus 7? en Stack Overflow, nuestro sitio hermano para preguntas de programación.

Dan Hulme
fuente
Esta no es una respuesta a la pregunta. Mis archivos multimedia son completamente inaccesibles en KitKat simplemente porque cambié el nombre de una carpeta. Eliminar la funcionalidad sin proporcionar una alternativa está completamente roto.
Barry Kelly
3

Esta es una muy buena pregunta y veo que ya está respondida. Escribí una pequeña aplicación para resolver este problema específicamente para Kit Kit (Android 4.4+). Mi aplicación funciona en todos los teléfonos.

Aquí:

https://play.google.com/store/apps/details?id=burrows.apps.sdcard

Esto funciona en el Nexus 5!

¡Por favor, hágamelo saber si esto le ayuda!

Descargo de responsabilidad: escribí esta aplicación.

Jared Burrows
fuente