使用毕加索为android中的音乐播放器应用程序加载专辑艺术



我正在为android工作的音乐播放器应用程序。我正在尝试使用毕加索(一个外部库)来有效地加载专辑艺术。但是专辑的封面并没有被展示出来。代码中没有错误,项目编译正确,但图像没有显示。
为此,我从"MediaStore.Audio.AlbumColumns.ALBUM_ART"获取专辑封面Uri。然后我在列表适配器的getView()方法中使用它:

Picasso.with(上下文).load (Uri.parse (album_art_uri)) .into (myImageView);

我不知道这是怎么回事?请帮我想一下。

Uri musicUri = android.provider.MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
    Cursor musicCursor = musicResolver.query(musicUri, null, null, null,
            null);
int album_id = musicCursor.getColumnIndex(android.provider.MediaStore.Audio.Media.ALBUM_ID);    
cursor = managedQuery(MediaStore.Audio.Albums.EXTERNAL_CONTENT_URI, 
                    new String[] {MediaStore.Audio.Albums._ID, MediaStore.Audio.Albums.ALBUM_ART}, 
                    MediaStore.Audio.Albums._ID+ "=?", 
                    new String[] {musicCursor.getString(album_id)}, 
                    null);
            if (cursor.moveToFirst()) {
                thisAlbumArt = cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Albums.ALBUM_ART));
            }

然后在getView()中加载毕加索,如下所示。它为我工作,但它很慢

Picasso.with(mContext)
.load(Uri.parse("file://"+thisAlbumArt))
.resize(220,220)
.noFade().centerCrop()
.error(R.drawable.music)
.placeholder(R.drawable.blank_img)
.into(yourImageView);
参考链接:

如何使用mediaststore . audio . albums . album_art显示专辑封面?

相关内容

最新更新