Example #1
0
  /**
   * 获取图片缩略图
   *
   * @param dbId
   * @return
   */
  public MediaThumbnail getImageThumbnail(int dbId) {
    String volumeName = "external";
    String selection = Images.Thumbnails.IMAGE_ID + "='" + dbId + "'";
    String[] columns =
        new String[] {Images.Thumbnails.DATA, Images.Thumbnails.WIDTH, Images.Thumbnails.HEIGHT};
    Uri uri = Images.Thumbnails.getContentUri(volumeName);
    Cursor cur = null;
    try {
      cur = mContext.getContentResolver().query(uri, columns, selection, null, null);
      if (null == cur) {
        return null;
      }

      if (!cur.moveToFirst()) {
        return null;
      }

      MediaThumbnail thumbnail = new MediaThumbnail();
      thumbnail.path = MediaDbUtil.getString(cur, Images.Thumbnails.DATA);
      thumbnail.width = MediaDbUtil.getInt(cur, Images.Thumbnails.WIDTH);
      thumbnail.height = MediaDbUtil.getInt(cur, Images.Thumbnails.HEIGHT);
      thumbnail.dbId = dbId;
      thumbnail.type = MediaThumbnail.TYPE_IMAGE;
      return thumbnail;
    } finally {
      if (cur != null) {
        cur.close();
      }
    }
  }
Example #2
0
  /**
   * 获取专辑名称
   *
   * @param dbId
   * @return
   */
  public String getAlbumBucket(int dbId) {
    String volumeName = "external";
    String selection = BaseColumns._ID + "='" + dbId + "'";
    String[] columns = new String[] {AudioColumns.ALBUM};
    Uri uri = Audio.Media.getContentUri(volumeName);
    Cursor cur = null;
    try {
      cur = mContext.getContentResolver().query(uri, columns, selection, null, null);
      if (null == cur) {
        return null;
      }

      if (!cur.moveToFirst()) {
        return null;
      }
      return MediaDbUtil.getString(cur, AudioColumns.ALBUM);
    } finally {
      if (cur != null) {
        cur.close();
      }
    }
  }
Example #3
0
  /**
   * 获取文件的MimeType
   *
   * @param dbId
   * @param type
   * @return
   */
  public String getMimeType(int dbId, int type) {
    String volumeName = "external";
    String selection = BaseColumns._ID + "='" + dbId + "'";
    String[] columns = new String[] {MediaColumns.MIME_TYPE};
    Uri uri = null;
    switch (type) {
      case TYPE_IMAGE:
        uri = Images.Media.getContentUri(volumeName);
        break;
      case TYPE_AUDIO:
        uri = Audio.Media.getContentUri(volumeName);
        break;
      case TYPE_VIDEO:
        uri = Video.Media.getContentUri(volumeName);
        break;
      default:
        break;
    }
    if (uri == null) {
      return null;
    }
    Cursor cur = null;
    try {
      cur = mContext.getContentResolver().query(uri, columns, selection, null, null);
      if (null == cur) {
        return null;
      }

      if (!cur.moveToFirst()) {
        return null;
      }
      return MediaDbUtil.getString(cur, MediaColumns.MIME_TYPE);
    } finally {
      if (cur != null) {
        cur.close();
      }
    }
  }