我理解如何使用游标加载器从MediaStore查询“音乐文件”。 我也没有看到查询特定专辑,流派,艺术家的歌曲的问题。但是我不知道如何根据它们所在的目录来查询MediaStore的歌曲。
final Uri sourceUri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
CursorLoader cursorLoader = new CursorLoader(
context,
sourceUri,
null,
null,
null,
MediaStore.Audio.Media.TITLE);
另外,如果你可以帮助我在相同的查询中获得专辑,流派等的歌曲数量,那就太棒了。
感谢您提前提供任何帮助。
答案 0 :(得分: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)));
我希望这会有所帮助。
答案 1 :(得分:0)
对于当前的API(18),无法使用内置工具进行此操作。这需要构建一些东西(比如自己的数据库)来帮助解决这个问题或使用其他方法(比如使用“文件浏览器”)。