代码和注释如下:

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);        }      }


更多相关文章

  1. Android中手机文件储存路径
  2. Android(安卓)数据存储(数据库、文件、参数)操作实例
  3. android post get
  4. Android(安卓)VTS学习
  5. Android下载文件保存到路径
  6. Android(安卓)Studio第三十四期 - git企业级应用命令
  7. Android如何获取asset目录下所有文件的路径
  8. Android(安卓)ViewGroup系列控件的使用
  9. Android中遇到问题:file.delete()不能删除文件

随机推荐

  1. 浅析Android线程模型一
  2. Android的专用驱动
  3. 用Android LiveCD体验Android 操作系统的
  4. android 获取web 内容简单实现
  5. Android除了三大动画,还有哪些动画?
  6. Android通过url获取bitmap图片问题
  7. 【转】有关Android线程的学习
  8. Android初学者入门 从入门到精通
  9. Android混合开发-(Android与Web的交互)
  10. Android安全机制(2) Android Permission权