2013-10-15 41 views
0

我知道如何用光標加載器從MediaStore查詢「音樂文件」。 我也沒有看到問題查詢特定專輯,流派,藝術家的歌曲。但我不知道如何根據它們所在的目錄查詢MediaStore的歌曲。MediaStore按CursorLoader文件夾排序

final Uri sourceUri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI; 
CursorLoader cursorLoader = new CursorLoader(
       context, 
       sourceUri, 
       null, 
       null, 
       null, 
       MediaStore.Audio.Media.TITLE); 

此外,如果你能幫助我拿到專輯,流派等在同一查詢這將是偉大的歌曲數量。

感謝您提前給予任何幫助。

回答

0

對於當前的API(18),無法使用內部生成工具來完成此操作。這需要構建一些東西(如自己的數據庫)來幫助查詢或使用其他方法(如使用「文件瀏覽器」)。

+0

嘿米哈爾給我一些關於在工具中建立更多的解釋@Michal – Xenolion

1

米查爾,你的問題和例子很混亂。你問音樂,但你的代碼是關於圖像。 總之,要獲得歌曲目錄

Uri uri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI; 
    final String path = MediaStore.Audio.Media.DATA; 

所以當你有一個光標例如c返回_DATA,

String strpath = (c.getString(c.getColumnIndex(MediaStore.Audio.Media._DATA))); 

這將返回的完整路徑,包括歌曲名稱本身。

爲了得到一張專輯的曲目(其中c爲光標返回)的數量

  String strnosongs = (c.getString(c 
       .getColumnIndex(MediaStore.Audio.Albums.NUMBER_OF_SONGS))); 

我希望這有助於。

+0

是的,它的確如此,謝謝。我還用代碼中的圖像修復了我的錯誤。 – Michal