如何查询给定艺术家的所有专辑

时间:2011-12-21 21:12:42

标签: android mediastore

我需要一种方法来显示给定艺术家的所有专辑。到目前为止我发现的所有内容都不是列出所有包含艺术家至少一个声音的专辑的方式 - 但那不是,我想要的。我是android新手,非常感谢帮助。提前谢谢!

1 个答案:

答案 0 :(得分:14)

这可能是为时已晚,但对其他人来说可能很有趣:

我遇到了同样的问题,只发现了一些模糊的解决方案,如何查询特定艺术家完成的所有专辑,然后我想出了这个相当简单的解决方案:

Uri.Builder builder = MediaStore.Audio.Artists.EXTERNAL_CONTENT_URI.buildUpon();
builder.appendPath(artistId);
builder.appendPath("albums");

cursor = parent.managedQuery(builder.build(), projection, null,
    null, MediaStore.Audio.Albums.DEFAULT_SORT_ORDER);

修改 获得Uri的上述解决方案可能不是最好的,这也应该有效:

Uri uri = MediaStore.Audio.Artists.Albums.getContentUri("external", artistId);

artistId是前一个艺术家查询中MediaStore.Audio.Artists._ID的值。