如何获取封面艺术的媒体(MediaStore.Audio.Media)在android (API 19)



所以我试图建立一个非常简单的音乐播放器(我开始与android工作只是几天前)。直到现在我写的代码检索歌曲信息。但是,我无法检索每个媒体的专辑封面。我知道在mediaststore . audio .Album中有一个列ALBUM_ART(我试图检索每个专辑的专辑封面并且它工作),但是我想将专辑封面分配给每首歌,我不知道如何做到这一点。我在网上发现了这样的代码:

Uri sArtworkUri = Uri.parse("content://media/external/audio/albumart");
Uri albumArtUri = ContentUris.withAppendedId(sArtworkUri, albumId);

但是它似乎不起作用,我得到的都是null。有人能告诉我如何检索每首歌的专辑封面吗?

String[] columns = {android.provider.MediaStore.Audio.Albums._ID,android.provider。MediaStore.Audio.Albums.ALBUM android.provider.MediaStore.Audio.Albums。ALBUM_ART};int album_column_index = 0;游标= getActivity().managedQuery()MediaStore.Audio.Albums。EXTERNAL_CONTENT_URI,列,null;零,零);

        if (cursor.moveToFirst()) {
            do {

                arrAlbumNAme.add( cursor.getString(cursor
                        .getColumnIndex(android.provider.MediaStore.Audio.Albums.ALBUM)));
                album_column_index = cursor.getColumnIndexOrThrow(android.provider.MediaStore.Audio.Albums._ID);
                //cursor.moveToPosition(position);
                albumID = cursor.getInt(album_column_index);
                Uri sArtworkUri = Uri.parse("content://media/external/audio/albumart");
                Uri uri = ContentUris.withAppendedId(sArtworkUri, albumID);
                arrAlbumArt.add(cursor.getString(cursor
                        .getColumnIndex(android.provider.MediaStore.Audio.Albums.ALBUM_ART)));
            } while (cursor.moveToNext());
        }

里面的适配器holder.image_icon.setImageUri (arrAlbumArt.get(位置));

相关内容

  • 没有找到相关文章

最新更新