Java 如何在android(API 19)中获取媒体(MediaStore.Audio.MEDIA)的封面艺术
所以我正在尝试构建一个非常简单的音乐播放器(我几天前才开始使用android)。到目前为止,我编写了检索歌曲信息的代码。然而,我无法检索每一种媒体的专辑艺术。 我知道MediaStore.Audio.ALBUM中有一个专栏ALBUM_ART(我试图检索每个专辑的专辑艺术,但它成功了),但我想将专辑艺术分配给每首歌曲,我不知道如何操作。 在网上我发现了这样的代码:Java 如何在android(API 19)中获取媒体(MediaStore.Audio.MEDIA)的封面艺术,java,android,audio,uri,albumart,Java,Android,Audio,Uri,Albumart,所以我正在尝试构建一个非常简单的音乐播放器(我几天前才开始使用android)。到目前为止,我编写了检索歌曲信息的代码。然而,我无法检索每一种媒体的专辑艺术。 我知道MediaStore.Audio.ALBUM中有一个专栏ALBUM_ART(我试图检索每个专辑的专辑艺术,但它成功了),但我想将专辑艺术分配给每首歌曲,我不知道如何操作。 在网上我发现了这样的代码: Uri sArtworkUri = Uri.parse("content://media/external/audio/albumar
Uri sArtworkUri = Uri.parse("content://media/external/audio/albumart");
Uri albumArtUri = ContentUris.withAppendedId(sArtworkUri, albumId);
但它似乎不起作用,我得到的只是
null
。有人能告诉我如何检索每首歌曲的唱片集吗?String[]columns={android.provider.MediaStore.Audio.Albums.\u ID,
android.provider.MediaStore.Audio.Albums.ALBUM,android.provider.MediaStore.Audio.Albums.ALBUM_ART};
int相册列索引=0;
Cursor Cursor=getActivity().managedQuery(
MediaStore.Audio.Albums.EXTERNAL_CONTENT_URI,列,null,
空,空)
内部适配器
holder.image_icon.setImageUri(arrAlbumArt.get(position))
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());
}