我正在尝试做一些相对简单的事情:获取在Android“音乐播放器”应用程序(股票应用程序,com.android.music,而不是第三方应用程序)中创建的音乐播放列表列表并显示它在我自己的应用程序中我正在查询MediaStore.Audio.Playlists。我的代码看起来像这样:
String[] projection = { MediaStore.Audio.Playlists._ID, MediaStore.Audio.Playlists.NAME };
Cusor cursor = getContentResolver().query(
MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI,
projection,
null,
null,
null);
if (cursor.getCount() > 0) {
cursor.moveToFirst();
do {
// do stuff with each playlist
} while (cursor.moveToNext());
}
cursor.close();
此代码在Android 2.3.4中运行良好。但是,在Android 2.2和2.1中,对于旧版本的音乐播放器(1.1.1和1),此查询返回空结果集。
为什么会这样?播放列表是否未存储在旧版“音乐播放器”应用中的相同位置?我试图从“音乐播放器”应用程序(available here)的源代码中区分各种与播放列表相关的文件,但我没有找到任何有用的信息。即使是旧版本的音乐播放器似乎也在操纵MediaStore.Audio.Playlists。
我在这里缺少什么?