【发布时间】:2014-05-15 15:46:00
【问题描述】:
我正在尝试获取手机上所有歌曲的专辑封面。我正在使用 MediaStore 来获取所有歌曲的标题、艺术家等。我应该如何获取专辑封面?我尝试使用 MediaMetaDataRetriever,但对如何将它用于多个文件感到困惑。任何人都可以调整这段代码吗?
活动类:
public void getSongList() {
// retrieve song info
ContentResolver musicResolver = getContentResolver();
Uri musicUri = android.provider.MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
Cursor musicCursor = musicResolver.query(musicUri, null, null, null,
null);
metaRetriver.setDataSource(MainActivity.this,musicUri); // now how to loop over this
if (musicCursor != null && musicCursor.moveToFirst()) {
// get columns
int titleColumn = musicCursor.getColumnIndex(MediaColumns.TITLE);
int idColumn = musicCursor.getColumnIndex(BaseColumns._ID);
int artistColumn = musicCursor.getColumnIndex(AudioColumns.ARTIST);
// add songs to list
do {
long thisId = musicCursor.getLong(idColumn);
String thisTitle = musicCursor.getString(titleColumn);
String thisArtist = musicCursor.getString(artistColumn);
songList.add(new Song(thisId, thisTitle, thisArtist));
} while (musicCursor.moveToNext());
}
【问题讨论】:
标签: android android-mediaplayer mediastore