本文实例讲述了Android开发之多媒体文件获取工具类。分享给大家供大家参考,具体如下:
包com.android.ocr.util; 进口java.io.File; 进口java.util.ArrayList; 进口并不知道; 进口android.content.Context; 进口android.database.Cursor; 进口android.graphics.Bitmap; 进口android.provider.MediaStore;/* * *根据MediaStore查询信息 * @Project App_ReadCard * @Package com.android.ocr.util * @author chenlin * @version 1.0 * @Date 2013年6月16日 * @Note待办事项 */公开课MediaStoreUtil { 私有静态最终字符串标签=癕ediaStoreUtil”;/* * *查询音频文件名称 * * @param上下文 * @return */公共静态ListgetAudioNames(上下文语境){ List 列表=new ArrayList (); 鼠标光标=context.getContentResolver () .query ( MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, 新String [] {MediaStore.Audio.Media。MediaStore.Audio.Media _ID。DISPLAY_NAME MediaStore.Audio.Media.TITLE, MediaStore.Audio.Media。持续时间、MediaStore.Audio.Media。艺术家,MediaStore.Audio.Media.ALBUM, MediaStore.Audio.Media。年,MediaStore.Audio.Media。MIME_TYPE MediaStore.Audio.Media.SIZE, MediaStore.Audio.Media。数据},null,新String [] {}, null); 而(cursor.moveToNext ()) { 字符串文件名=cursor.getString (cursor.getColumnIndex (MediaStore.Audio.Media.DISPLAY_NAME)); list.add(文件名); } 返回列表; }/* * *查询图片文件名称 * * @param上下文 * @return */公共静态List getImageNames(上下文语境){ List 列表=new ArrayList (); 鼠标光标=context.getContentResolver () .query ( MediaStore.Images.Media.EXTERNAL_CONTENT_URI, 新String [] {MediaStore.Images.Media。MediaStore.Images.Media _ID。DISPLAY_NAME MediaStore.Images.Media.TITLE, MediaStore.Images.Media。MIME_TYPE MediaStore.Images.Media。大小,MediaStore.Images.Media。数据}、零 新String [] {}, null); 而(cursor.moveToNext ()) { 记录器。我(标签,“filePath==" + MediaStore.Images.Media.DATA); 字符串filePath=cursor.getString (cursor.getColumnIndex (MediaStore.Images.Media.DATA)); 字符串文件名=cursor.getString (cursor.getColumnIndex (MediaStore.Images.Media.DISPLAY_NAME)); 列表。添加(filePath + " +文件名); } 返回列表; }/* * *查询图片文件 * * @param上下文 * @return */公共静态List getimage(上下文语境){ List 列表=new ArrayList (); 鼠标光标=context.getContentResolver () .query ( MediaStore.Images.Media.EXTERNAL_CONTENT_URI, 新String [] {MediaStore.Images.Media。MediaStore.Images.Media _ID。DISPLAY_NAME MediaStore.Images.Media.TITLE, MediaStore.Images.Media。MIME_TYPE MediaStore.Images.Media。大小,MediaStore.Images.Media。数据}、零 新String [] {}, null); 而(cursor.moveToNext ()) { 字符串filePath=cursor.getString (cursor.getColumnIndex (MediaStore.Images.Media.DATA)); 记录器。我(标签,“filePath==" + filePath); 字符串文件名=cursor.getString (cursor.getColumnIndex (MediaStore.Images.Media.DISPLAY_NAME));//日志记录器。我(标签,“文件名”==+文件名); 文件文件=新文件(filePath); list.add(文件); } 返回列表; }/* * *查询文件 * * @param上下文 * @return */公共静态List getAllFiles(上下文语境){ List 列表=new ArrayList (); 鼠标光标=context.getContentResolver () .query ( MediaStore.Images.Media.EXTERNAL_CONTENT_URI, 新String [] {MediaStore.Images.Media。MediaStore.Images.Media _ID。DISPLAY_NAME MediaStore.Images.Media.TITLE, MediaStore.Images.Media。MIME_TYPE MediaStore.Images.Media。大小,MediaStore.Images.Media。数据}、零 新String [] {}, null); 而(cursor.moveToNext ()) { 字符串filePath=cursor.getString (cursor.getColumnIndex (MediaStore.Images.Media.DATA)); 记录器。我(标签,“filePath==" + filePath); 字符串文件名=cursor.getString (cursor.getColumnIndex (MediaStore.Images.Media.DISPLAY_NAME));//日志记录器。我(标签,“文件名”==+文件名); 文件文件=新文件(filePath); list.add(文件); } 返回列表; }/* * *获取所有的缩列图 * * @param上下文 * @return */公共静态位图[]getBitmaps(上下文语境){ 位图[]位图; String []={MediaStore.Images.Media投影。MediaStore.Images.Media _ID。数据}; 鼠标光标=context.getContentResolver () .query (MediaStore.Images.Media。EXTERNAL_CONTENT_URI、投影、空,空, MediaStore.Images.Media._ID); int数=cursor.getCount (); int image_column_index=cursor.getColumnIndex (MediaStore.Images.Media._ID); 位图=新的位图(数); for (int i=0;我& lt;计数;我+ +){ cursor.moveToPosition(我); int id=cursor.getInt (image_column_index); 位图[我]=MediaStore.Images.Thumbnails.getThumbnail (context.getContentResolver(),身份证、 MediaStore.Images.Thumbnails。MICRO_KIND, null); } 返回位图; }/* * *查询图片缩列文件名称 * * @param上下文 * @return */公共静态List Android开发之多媒体文件获取工具类实例【音频,视频,图片等】