Ruta de archivo para Android cuando se usa el emulador

Soy nuevo en android. Estoy tratando de descargar un archivo del servidor y guardar el archivo en una ruta particular. La aplicación está funcionando bien. Sin embargo, no puedo encontrar la ruta del archivo descargado. En el código que he dado como

Salida de archivo = nuevo archivo("/data/data/com.test.firstApp/", fileName);

¿Dónde puedo encontrar el archivo en mi sistema?

preguntado el 22 de mayo de 12 a las 15:05

3 Respuestas

No utilice rutas de archivo codificadas de forma rígida. El marco le dará la ruta base del área en la que desea guardar los archivos.

Para la tarjeta SD, utilice Environment.getExternalStorageDirectory()

Para archivos locales, use Context.getFilesDir() (o Context.openFileOutput(String name, int mode), Etc)

Para caché local, use Context.getCacheDir()

contestado el 22 de mayo de 12 a las 15:05

Estoy de acuerdo contigo y utilicé getFilesDir(). La aplicación funcionó bien incluso ahora. Mi pregunta es: mi emulador de Android descargó el archivo del servidor y lo almacenó en la ruta getFilesDir (). ¿Dónde está esta ruta en mi computadora? Quiero abrir el archivo que he descargado en un bloc de notas. - arungir_10

getFilesDir devuelve un objeto de archivo. En este objeto de archivo, registre el valor de cadena de File.getAbsoluteFilePath, y eso le indicará la ruta absoluta completa al directorio raíz. - Rico

Obtuve la ruta de esta forma: /data/data/com.test.firstApp/files/test_123.wav. Entonces, ¿dónde lo encontraré en mi sistema? - arungir_10

No estoy seguro de lo que significa "en mi sistema". El emulador usa un almacenamiento virtual que no está asignado directamente a una carpeta en el disco duro de su computadora. Para acceder a ese archivo, abra una sesión de "adb shell" en la línea de comando. Puede navegar por el almacenamiento virtual del emulador usando los comandos habituales de Unix/Linux (cd, ls, ...) y puede copiarlo en el almacenamiento local de su computadora usando el comando "adb pull": Rico

amigo brillante Muchas gracias. Esto es lo que estaba buscando. Encontré el archivo. :) - arungir_10

Agregando a la respuesta de Rich, en el caso probable de que termine escribiendo en un almacenamiento externo, asegúrese de incluir este permiso en el manifiesto:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

contestado el 22 de mayo de 12 a las 15:05

Revisa esta página http://developer.android.com/guide/topics/data/data-storage.html

Puede encontrar muchos métodos para guardar archivos. Además, también puede leer algo sobre buenas prácticas.

¡Salud

contestado el 22 de mayo de 12 a las 15:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.