android获取音乐文件的内置专辑图片实现思路及代码

yllatnj

yllatnj

2016-02-19 09:25

下面图老师小编跟大家分享一个简单易学的android获取音乐文件的内置专辑图片实现思路及代码教程,get新技能是需要行动的,喜欢的朋友赶紧收藏起来学习下吧!
代码和注释如下:
代码如下:

private Cursor getCursor(String filePath) {
String path = null;
Cursor c = getContentResolver().query(
MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null, null, null,
MediaStore.Audio.Media.DEFAULT_SORT_ORDER);
// System.out.println(c.getString(c.getColumnIndex("_data")));
if (c.moveToFirst()) {
do {
// 通过Cursor 获取路径,如果路径相同则break;
System.out.println("////////"+filePath);
path = c.getString(c
.getColumnIndexOrThrow(MediaStore.Audio.Media.DATA));
System.out.println("?????????"+path);
// 查找到相同的路径则返回,此时cursorPosition 便是指向路径所指向的Cursor 便可以返回了
if (path.equals(filePath)) {
// System.out.println("audioPath = " + path);
// System.out.println("filePath = " + filePath);
// cursorPosition = c.getPosition();
break;
}
} while (c.moveToNext());
}
// 这两个没有什么作用,调试的时候用
// String audioPath = c.getString(c
// .getColumnIndexOrThrow(MediaStore.Audio.Media.DATA));
//
// System.out.println("audioPath = " + audioPath);
return c;
}
private String getAlbumArt(int album_id) {
String mUriAlbums = "content://media/external/audio/albums";
String[] projection = new String[] { "album_art" };
Cursor cur = this.getContentResolver().query(
Uri.parse(mUriAlbums + "/" + Integer.toString(album_id)),
projection, null, null, null);
String album_art = null;
if (cur.getCount() 0 && cur.getColumnCount() 0) {
cur.moveToNext();
album_art = cur.getString(0);
}
cur.close();
cur = null;
return album_art;
}
private void getImage(){
Cursor currentCursor = getCursor("/mnt/sdcard/"+mp3Info);
int album_id = currentCursor.getInt(currentCursor
.getColumnIndexOrThrow(MediaStore.Audio.Media.ALBUM_ID));
String albumArt = getAlbumArt(album_id);
Bitmap bm = null;
if (albumArt == null) {
mImageView.setBackgroundResource(R.drawable.staring);
} else {
bm = BitmapFactory.decodeFile(albumArt);
BitmapDrawable bmpDraw = new BitmapDrawable(bm);
mImageView.setImageDrawable(bmpDraw);
}
}
展开更多 50%)
分享

猜你喜欢

android获取音乐文件的内置专辑图片实现思路及代码

编程语言 网络编程
android获取音乐文件的内置专辑图片实现思路及代码

android获取屏幕像素思路及代码

编程语言 网络编程
android获取屏幕像素思路及代码

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

android实现横屏的代码及思路

编程语言 网络编程
android实现横屏的代码及思路

Java 图片压缩实现思路及代码

编程语言 网络编程
Java 图片压缩实现思路及代码

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

android dialog边框去除白色边框实现思路及代码

编程语言 网络编程
android dialog边框去除白色边框实现思路及代码

Android模拟器中窗口截图存成文件实现思路及代码

编程语言 网络编程
Android模拟器中窗口截图存成文件实现思路及代码

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

作业快到火里来  你才到火里去! - QQ搞笑分组

作业快到火里来  你才到火里去! - QQ搞笑分组

firefox中用javascript实现鼠标位置的定位

firefox中用javascript实现鼠标位置的定位
下拉加载更多内容 ↓