Por qué mi carpeta DCIM está vacía en la computadora pero no en el teléfono [duplicado]

Estoy usando el dispositivo HuaWeiNova e intenté acceder a él con aft-mtp-cli.

$ aft-mtp-cli
$ ls DCIM/

Tengo carpetas enumeradas aquí:

|-photos
|-Camera
....

Cuando traté de enumerar o descargar mis fotos en la Camera/carpeta, no obtuve nada. Solo se enumeran las carpetas vacías y las carpetas que contienen archivos no se muestran en absoluto. Estoy bastante seguro de que mis fotos están almacenadas en la Cameracarpeta de mi teléfono celular. ¿Cómo es que no pude acceder a mis fotos con mi computadora?

Tal vez tus fotos están en la tarjeta SD, pero ¿muestras el almacenamiento interno?

Respuestas (1)

Para acceder a su dispositivo Android a través de USB en el modo "Transferencia de archivos", su computadora utiliza el protocolo MTP. Este protocolo permite listar y leer/escribir los archivos desde/hacia su dispositivo.

Lo que la mayoría de la gente no sabe es que el protocolo MTP no muestra el contenido del sistema de archivos. En su lugar, utiliza la base de datos de Android MediaStore (una base de datos SQLite) que se completa con el proveedor de medios , un demonio especial que se ejecuta en Android (nombre del paquete de la aplicación:) com.android.providers.media.

Si crea un nuevo archivo/directorio o elimina algo sin notificar a este demonio, la base de datos y el sistema de archivos no están sincronizados y termina viendo los archivos ya eliminados o no puede ver los archivos existentes.

Puede obligar a Android MediaStore a actualizar su base de datos.

Hay tres formas de hacerlo, simplemente elija una de las siguientes:

  1. reinicia tu teléfono

  2. Use una de la multitud de aplicaciones que pueden forzar una nueva exploración de la tarjeta SD

  3. Solo para Android 4-7: utilice la siguiente línea de comandos ADB ( fuente ):

    adb shell am broadcast -a android.intent.action.MEDIA_MOUNTED -d file:///sdcard

Restablecimiento de la base de datos de MediaStore

Algunas veces puede suceder que la base de datos de MediaStore esté dañada. En tal caso, abra la página de información de la aplicación com.android.providers.media(habilite "mostrar aplicaciones del sistema") y borre el almacenamiento de esta aplicación. Luego reinicie el dispositivo.

Después de reiniciar, inicie sesión con su contraseña/pin/patrón para que pueda ver el lanzador. Luego deje el dispositivo solo para regenerar la base de datos de medios. Esto puede tomar algunos minutos u horas dependiendo de la cantidad de archivos multimedia que tenga en su teléfono.

Si eso aún no resuelve el problema de la falta de archivos y carpetas, es posible que tenga un archivo multimedia dañado en su teléfono que impide un mayor análisis de los archivos multimedia. En tal caso, primero debe identificar el archivo corrupto y eliminarlo o repararlo.

Para Android 8 y superior, ese comando adb no funcionaría. Vea mi respuesta android.stackexchange.com/a/200785/96277 .
@Firelord Gracias por la información. Si llego a la conclusión correcta de sus pruebas, una aplicación actualizada de Android 8 que envíe esta transmisión con un Fileobjeto debería funcionar, ¿verdad? Y según mi experiencia con Android 9, MediaStore generalmente actualiza automáticamente la base de datos para que no haya necesidad de activar manualmente una actualización.
Lo siento, no puedo interpretar esa conclusión por alguna razón, así que no puedo comentar al respecto. // Me enteré por usted hace algún tiempo que Android 9 actualiza automáticamente la base de datos, por lo que no hay necesidad de un activador manual. Actualicé mi respuesta allí porque una aplicación puede bloquear el servidor de medios (sucedió con un módulo Xposed), por lo que se necesitaba una solución alternativa. En circunstancias normales, sí, nadie necesitaría recurrir a la solución de línea de comandos. Así que tu respuesta está bien ahora. :)
Bueno, reiniciar solía hacer eso en Android 7.
@Firelord, ¿cómo lo hace este tipo en este video youtube.com/watch?v=GitMOYdsA9I donde muestra aquí i.imgur.com/9gou0yT.png el explorador de Windows que muestra muchas más carpetas que solo DCIM e imágenes?
Los dispositivos Android @barlop normalmente muestran todas las carpetas. Incluso los dispositivos modernos con Android 11 lo hacen. Si su dispositivo no aparece, algo anda mal. Borre la memoria caché de la aplicación com.android.providers.media, reinicie el dispositivo y espere algunas horas (depende de la cantidad de archivos multimedia que tenga).