A partir del nivel 8 de la API, parece que Android ha redefinido el almacenamiento "externo". Leyendo a través del http://developer.android.com/reference/android/os/Environment.html, adjunto a la documentación para getExternalStorageDirectory
Veo el comentario: "No se confunda con la palabra 'externo' aquí. Este directorio se puede considerar mejor como medio/almacenamiento compartido ... En dispositivos con múltiples 'externos' directorios de almacenamiento ..., este directorio representa el almacenamiento externo "primario" con el que el usuario interactuará ".Environment.getExternalStorageDirectory no devuelve la ruta al almacenamiento extraíble
Mi aplicación escribe archivos en la ruta obtenida por getExternalStorageDirectory
, y he tenido usuarios que solicitan una opción para escribir en su tarjeta extraíble. Siempre había supuesto que getExternalStorageDirectory
devolvía la ruta a la tarjeta SD extraíble, pero esto ya no es cierto. ¿Cómo accedo a la ruta de esta tarjeta SD?
BTW: No vi su edición eliminando la parte de la pregunta 'getExternalStoragePublicDirectory' hasta ahora. – Aleadam
Lo siento, lo eliminé y proporcioné un mensaje de edición que explicaba que lo había eliminado, pero supongo que no se muestran los mensajes de edición. Dado que no hay forma de obtener la ubicación de la tarjeta SD extraíble, si existe, ¿cuál es el propósito de esta ranura para tarjetas SD en teléfonos como Atrix? ¿Es solo para almacenar datos mientras está montado en una computadora, como una memoria USB? – skyler
@skyler está bien, simplemente no quería que mi respuesta pareciera fuera de contexto. Honestamente, es una opción mucho mejor que la SD interna. Es más rápido, más confiable y sabes que siempre está ahí. Pero si lo solicitan, brinde una opción manual como dije antes (un cuadro de diálogo Guardar como). Por ejemplo, en mi captivate, el interno es '/ sdcard' y el externo es'/sdcard/external_sd/' – Aleadam