1、获取视频缩略图有两个方法(1)通过内容提供器来获取(2)人为创建缩略图

(1)缺点就是必须更新媒体库才能看到最新的视频的缩略图

/**      * @param context      * @param cr     * @param Videopath     * @return      */    public static Bitmap getVideoThumbnail(Context context, ContentResolver cr, String Videopath) {             ContentResolver testcr = context.getContentResolver();             String[] projection = { MediaStore.Video.Media.DATA, MediaStore.Video.Media._ID, };             String whereClause = MediaStore.Video.Media.DATA + " = '" + Videopath + "'";             Cursor cursor = testcr.query(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, projection, whereClause,                             null, null);             int _id = 0;             String videoPath = "";             if (cursor == null || cursor.getCount() == 0) {                     return null;             }             if (cursor.moveToFirst()) {                     int _idColumn = cursor.getColumnIndex(MediaStore.Video.Media._ID);                     int _dataColumn = cursor.getColumnIndex(MediaStore.Video.Media.DATA);                     do {                             _id = cursor.getInt(_idColumn);                             videoPath = cursor.getString(_dataColumn);                     } while (cursor.moveToNext());             }             cursor.close();            BitmapFactory.Options options = new BitmapFactory.Options();             options.inDither = false;             options.inPreferredConfig = Bitmap.Config.RGB_565;             Bitmap bitmap = MediaStore.Video.Thumbnails.getThumbnail(cr, _id, Images.Thumbnails.MINI_KIND,                             options);             return bitmap;     }

(2)人为创建缩略图要耗费一点时间

 /**     * 获取视频缩略图     * @param videoPath     * @param width     * @param height     * @param kind     * @return     */    private Bitmap getVideoThumbnail(String videoPath, int width , int height, int kind){Bitmap bitmap = null;bitmap = ThumbnailUtils.createVideoThumbnail(videoPath, kind);bitmap = ThumbnailUtils.extractThumbnail(bitmap, width, height, ThumbnailUtils.OPTIONS_RECYCLE_INPUT);return bitmap;    }


2、图片缩略图

 /**      *       * @param context      * @param cr     * @param Imagepath      * @return      */    public static Bitmap getImageThumbnail(Context context, ContentResolver cr, String Imagepath) {             ContentResolver testcr = context.getContentResolver();             String[] projection = { MediaStore.Images.Media.DATA, MediaStore.Images.Media._ID, };             String whereClause = MediaStore.Images.Media.DATA + " = '" + Imagepath + "'";             Cursor cursor = testcr.query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, projection, whereClause,                             null, null);             int _id = 0;             String imagePath = "";             if (cursor == null || cursor.getCount() == 0) {                     return null;             }             if (cursor.moveToFirst()) {                     int _idColumn = cursor.getColumnIndex(MediaStore.Images.Media._ID);                     int _dataColumn = cursor.getColumnIndex(MediaStore.Images.Media.DATA);                     do {                             _id = cursor.getInt(_idColumn);                             imagePath = cursor.getString(_dataColumn);                     } while (cursor.moveToNext());             }             cursor.close();            BitmapFactory.Options options = new BitmapFactory.Options();             options.inDither = false;             options.inPreferredConfig = Bitmap.Config.RGB_565;             Bitmap bitmap = MediaStore.Images.Thumbnails.getThumbnail(cr, _id, Images.Thumbnails.MINI_KIND,                             options);             return bitmap;     }



更多相关文章

  1. android 添加视频、图片、录音上传(一)
  2. 短视频平台搭建Android(安卓)Camera 录制视频,可限制时长,限大小
  3. 最新android视频地址及android4.2环境地址
  4. Android使用adb命令对手机进行截屏保存到电脑&SDCard
  5. Android之使用MediaMetadataRetriever类获取视频第一帧
  6. 学习Android(一)
  7. Android中调用系统摄像并且保存到指定位置的一些问题&Uri转文件
  8. android 根据图片路径获取图片缩略图
  9. Android轮播图 banner,图片视频混播banner

随机推荐

  1. Android(安卓)startActivityForResult的
  2. Android(安卓)的 Recovery 分析
  3. Android(安卓)ASE 脚本环境
  4. android中MotionEvent.ACTION_CANCEL事件
  5. 在RelativeLayout布局中可以设置标签的an
  6. android绘图之Paint(1)
  7. 深入Gradle插件开发
  8. android获取正在运行的进程
  9. android中HttpURLConnection调用getRespo
  10. [置顶] android 图标的绘制