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?
- Mi implementación de la indexación de aplicaciones no funciona
- Cómo obtener la cadena de paquetes del manifiesto de Android
- Establezca el tipo PreferenceScreen como "Select Contact"
- Explicación de Afinidad de Tarea de Android
- Ya sea .. o distinción en Android <uses-feature> manifiesto
- Android + XAMARIN + Force para permanecer en modo "Retrato" (usando AndroidManifest)
- Cómo crear un proyecto de biblioteca de android en android?
- Android: evita que la pantalla se apague
- Android: uses-sdk minSdkVersion es ignorado por Play Store?
- Falta el ícono del lanzador en Android
- Agregue un atributo en la etiqueta "application" en el AndroidManifest desde un complemento cordova
- Tema de la aplicación de Android - diferencia al utilizar el tema del archivo de estilo xml
- AutoStart La aplicación no funciona correctamente
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
- Compruebe si hay un BroadCastReceiver registrado con una cadena de acción
- Android.permission.CALL_PHONE: hacer apk solo para teléfonos y tabletas: