Leer todos los archivos del sistema de archivos de Android

Estoy escribiendo una aplicación mediaPlayer de Android, así que quiero escanear a través de todos los archivos de todo el teléfono (es decir, tarjeta SD y memoria del teléfono). Puedo leer del sdcard, pero no la raíz de él. Es decir, sólo puedo leer de la ruta /sdcard/[folder]/ y funciona bien, pero si voy a /sdcard/ la aplicación se bloquea. ¿Cómo puedo acceder a todos los archivos de la tarjeta sd, así como los archivos en el propio teléfono?

Nunca utilice la / sdcard / path. No está garantizado para trabajar todo el tiempo.

Utilice el código a continuación para obtener la ruta al directorio de sdcard.

 File root = Environment.getExternalStorageDirectory(); String rootPath= root.getPath(); 

Desde la ubicación rootPath, puede crear la ruta de acceso a cualquier archivo de la tarjeta SD. Por ejemplo, si hay una imagen en /DCIM/Camera/a.jpg, entonces ruta absoluta sería rootPath + "/DCIM/Camera/a.jpg".

Sin embargo, para listar todos los archivos de la tarjeta SD, puede utilizar el código a continuación

 String listOfFileNames[] = root.list(YOUR_FILTER); 

ListOfFileNames tendrá nombres de todos los archivos que están presentes en la tarjeta SD y pasa los criterios establecidos por filtro.

Suponga que desea listar archivos mp3 solamente, y luego pase el siguiente nombre de la clase de filtro a la función list ().

 FilenameFilter mp3Filter = new FilenameFilter() { File f; public boolean accept(File dir, String name) { if(name.endsWith(".mp3")){ return true; } f = new File(dir.getAbsolutePath()+"/"+name); return f.isDirectory(); } }; 

Shash

  • ¿Cómo podemos cambiar el icono de la aplicación Android de forma dinámica en Android
  • ¿Cómo configurar un repositorio de fuente de Android mientras hospeda los árboles git como repositorios privados en github?
  • Cómo ignorar los lanzadores de AndroidManifest.xml de un proyecto de biblioteca
  • Android GPS Manifest no funciona
  • Reanude la actividad principal en lugar de iniciar la actividad del lanzador
  • Suprimir AndroidManifest.xml Advertencia relacionada con minSdkVersion
  • Cómo deshabilitar la combinación de manifiesto en Android Studio
  • Sobre cómo trabajar con Fragment en Android 2.1 actualizado
  • Android: ¿Cuál usar para el nombre del paquete? Nombre de paquete de manifiesto o aplicación de GradleId?
  • ¿Es posible bloquear SMS salientes?
  • Android + gradle: diferentes metadatos manifiestos por sabor
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.