Estoy escribiendo una aplicación para reproductor de música y me pregunto dónde debería buscar los archivos de música del usuario. Quiero encontrar todas las canciones que la aplicación de Música normalmente encuentra y tengo curiosidad de cómo esa aplicación encuentra las canciones. ¿Hay una variable enum para una carpeta específica? ¿Solo una búsqueda recursiva de la tarjeta sd? Sé que en la tarjeta SD de mi teléfono hay una carpeta de Música; ¿Es así como está en cada dispositivo Android y debería buscar recursivamente esa carpeta? ¿O debería simplemente pedirle al usuario que encuentre la carpeta?Ubicación de archivos de música de Android?
8
A
Respuesta
14
Puede encontrar todos los archivos de música de sdcard utilizando la función siguiente.
public void getAllSongsFromSDCARD()
{
String[] STAR = { "*" };
Uri allsongsuri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
String selection = MediaStore.Audio.Media.IS_MUSIC + " != 0";
cursor = managedQuery(allsongsuri, STAR, selection, null, null);
if (cursor != null) {
if (cursor.moveToFirst()) {
do {
String song_name = cursor
.getString(cursor
.getColumnIndex(MediaStore.Audio.Media.DISPLAY_NAME));
int song_id = cursor.getInt(cursor
.getColumnIndex(MediaStore.Audio.Media._ID));
String fullpath = cursor.getString(cursor
.getColumnIndex(MediaStore.Audio.Media.DATA));
String album_name = cursor.getString(cursor
.getColumnIndex(MediaStore.Audio.Media.ALBUM));
int album_id = cursor.getInt(cursor
.getColumnIndex(MediaStore.Audio.Media.ALBUM_ID));
String artist_name = cursor.getString(cursor
.getColumnIndex(MediaStore.Audio.Media.ARTIST));
int artist_id = cursor.getInt(cursor
.getColumnIndex(MediaStore.Audio.Media.ARTIST_ID));
} while (cursor.moveToNext());
}
cursor.close();
}
}
2
Android escanea automáticamente todas las tarjetas SD externas para audio e indexa estos datos; consulte la clase MediaStore.Audio para obtener más información. Esto le permite consultar por álbumes, artistas, géneros y listas de reproducción. Si solo desea obtener una lista de archivos multimedia, consulte el proveedor de contenido MediaStore.Audio.Media.EXTERNAL_CONTENT_URI.
Cuestiones relacionadas
- 1. Android MediaStore obtiene distintas carpetas de archivos de música
- 2. Aplicación de Android para Pausar/Reanudar la música de otra aplicación de reproductor de música
- 3. html para archivos de música en Linux
- 4. log4j.xml ubicación de archivos
- 5. Código fuente del reproductor de música Android
- 6. ¿Cómo abrir selector de música?
- 7. Transcripción de música de archivos Wav en Java
- 8. Android, Ormlite, ubicación de DB
- 9. Cómo programar un simple secuenciador de música para Android (Java)
- 10. Formato de música de Android recomendado: mp3, ogg u otro?
- 11. Lanzamiento de Android reproductor de música con intención
- 12. Reproducción de música BG a través de actividades en Android
- 13. Ordenando música
- 14. ¿Generación de música procesal?
- 15. Visualización de la música
- 16. Crear visualizador de música
- 17. Reproductor de música proceso
- 18. Ubicación de archivos adjuntos en JIRA
- 19. Música de fondo de bucle?
- 20. análisis de la música de software
- 21. Android: obtención confiable de la ubicación actual
- 22. android gps ubicación actual
- 23. confundido acerca de la ubicación de Java propiedades de archivos
- 24. Composición de música en LaTeX
- 25. música con script de shell
- 26. Representación semántica (o simbólica) de la música
- 27. Android: Cómo cambiar la velocidad de reproducción de música con OpenSL ES
- 28. Abrir el diálogo de archivos para la ubicación de FTP
- 29. Ubicación para poner archivos de configuración de usuario en Windows
- 30. Mejor ubicación para archivos de registro de excepción (Windows)
Impresionante, eso realmente me abre los ojos a algo de la estructura del SO Android. Esta es una aplicación tan simple, pero estoy aprendiendo mucho. Gracias. –
bienvenida ... –