Si hallas alguna incompatibilidad en tu código o proyecto, recuerda probar siempre en un ambiente de testing antes añadir el código al proyecto final.
Solución:
Verificando tus fotos nuevamente: ese dispositivo parece tener una configuración de montaje extraña, que nunca antes había visto en un dispositivo Android. /storage/sdcard0
de hecho es su SD interna. Pero tan pronto como se monta la tarjeta externa, parece que se inicializa una especie de “sistema de archivos superpuestos”, mezclándolo con la tarjeta interna como si fuera un solo dispositivo. Puede verlo por el hecho de que, al desmontar, algunas entradas de la foto #3 desaparecen (foto #4; por supuesto, los archivos de la tarjeta externa) mientras que algunas permanecen (las de la tarjeta interna).
Para averiguar dónde está montada físicamente la tarjeta externa, puede utilizar el mount
o df
comando en un indicador de terminal: no se requiere root para eso, una aplicación de terminal simple servirá o, alternativamente, acceda a través de adb shell
(ver: adb y su etiqueta-wiki).
Editar: Después de haber recogido df
salida con y sin la tarjeta externa montada, la situación parece un poco más confusa. Esto es lo que está pasando en tu caso:
- la tarjeta SD interna se monta en
/storage/sdcard0
como debería ser. - cuando se inserta la tarjeta externa,
- el interno se desmonta
- la tarjeta externa se monta en
/storage/sdcard0
- la tarjeta interna se monta en
/storage/sdcard0/internalSD
- cuando se desmonta la tarjeta externa, las cosas se invierten nuevamente
Asi que /storage/sdcard0
nunca muestra “vacío”, pero el contenido “cambia”. partes relevantes de df
salida para confirmar esto:
# df run with the external card mounted: /storage/sdcard0 1.9G … /storage/sdcard0/internalSD 1023.7M … # df run after unmounting the external card: /storage/sdcard0 1023.7M …
Consultar con las tallas para confirmar. Otra prueba es la mount
producción:
# mount with both cards mounted: /dev/block/vold/179:65 /storage/sdcard0 vfat /dev/block/vold/179:30 /storage/sdcard0/internalSD vfat # after unmounting the external card: /dev/block/vold/179:30 /storage/sdcard0 vfat
Aquí se ve claramente el dispositivo (primera columna) montado en /storage/sdcard0
cambios (lo que explica por qué quería el mount
salida en primer lugar). Así que no hay UnionFS: la salida también muestra claramente que ambas tarjetas usan VFAT. Cambio de contenido en el /storage/sdcard0
directorio se explican fácilmente por el “intercambio” de las tarjetas SD.
Sección de Reseñas y Valoraciones
Agradecemos que desees apoyar nuestro cometido poniendo un comentario o dejando una valoración te damos la bienvenida.