2013-04-21 83 views
1

我正在實現一個Android音樂播放器,並希望實現搜索功能。 搜索應尋找專輯,藝術家和標題,我希望他們以不同的方式顯示。此外,如果我找到了例如藝術家和標題,我的應用程序應該能夠正確反應,如果用戶點擊一個項目(藝術家=顯示他所有的歌曲,標題=播放歌曲)。實現Android音樂搜索

我知道有一家MediaStore供應商(http://developer.android.com/reference/android/provider/MediaStore.Audio.Media.html),但似乎我需要比這更多的功能。如果我做這樣的查詢,我不是現在如果藝術家或標題匹配做:

String[] projection = { 
    BaseColumns._ID, 
    MediaStore.Audio.Media.MIME_TYPE, 
    MediaStore.Audio.Artists.ARTIST, 
    MediaStore.Audio.Albums.ALBUM, 
    MediaStore.Audio.Media.TITLE, 
}; 

Cursor c = getContentResolver().query(
    MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, 
    projection, MediaStore.Audio.Media.TITLE + " 
    LIKE "+ "'%"+query+"%' OR " + MediaStore.Audio.Media.ARTIST + " 
    LIKE "+ "'%"+query+"%'", null, MediaStore.Audio.Media.TITLE); 

林現在考慮根據中央android音樂數據庫上創建索引,但我不知道如果這是可能的話。

也許有一個簡單的解決方案,或者有誰已經實現了這樣的東西?

回答