Saltar al contenido

Android – Tarjeta SD y su directorio

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/sdcard0como debería ser.
  • cuando se inserta la tarjeta externa,
    1. el interno se desmonta
    2. la tarjeta externa se monta en /storage/sdcard0
    3. 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.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *