实现功能:
在MyMusicListFragment中实现专辑封面图片
在item_music_list中实现专辑封面图片
实现效果如图:
在MediaUtiles中添加如下代码:
在MyMusicListFragment中实现专辑封面图片
在item_music_list中实现专辑封面图片
实现效果如图:
在MediaUtiles中添加如下代码:
/**
* 获取默认专辑图片
*/
public static Bitmap getDefaultArtwork(Context context,boolean small) {
BitmapFactory.Options opts = new BitmapFactory.Options();
opts.inPreferredConfig = Bitmap.Config.RGB_565;
if(small){ //返回小图片
return BitmapFactory.decodeStream(context.getResources().openRawResource(R.mipmap.music), null, opts);
}
return BitmapFactory.decodeStream(context.getResources().openRawResource(R.mipmap.music), null, opts);
}
/**
* 从文件当中获取专辑封面位图
*/
private static Bitmap getArtworkFromFile(Context context, long songid, long albumid){
Bitmap bm = null;
if(albumid < 0 && songid < 0) {
throw new IllegalArgumentException("Must specify an album or a song id");
}
try {
BitmapFactory.Options options = new BitmapFactory.Options();
FileDescriptor fd = null;
if(albumid < 0){
Uri uri = Uri.parse("content://media/external/audio/media/"
+ songid + "/albumart");
ParcelFileDescriptor pfd = context.getContentResolver().openFileDescriptor(uri, "r");
if(pfd != null) {
fd = pfd.getFileDescriptor();
}
} else {
Uri uri = ContentUris.withAppendedId(albumArtUri, albumid);
ParcelFileDescriptor pfd = context.getContentResolver().openFileDescri