2013-04-21 112 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音乐数据库上创建索引,但我不知道如果这是可能的话。

也许有一个简单的解决方案,或者有谁已经实现了这样的东西?

回答