Android获取SD卡上图片和视频缩略图的小例子

时间:2022-09-23 17:52:37

      如何判断文件呢? 可以通过Cursor遍历数据库,对比INTERNAL_CONTENT_URI字段的值,这是一个Uri,这里保存着Android手机SD卡上的多媒体文件完整路径。

[java]

复制代码 代码如下:


Uri originalUri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
                //若为视频则为MediaStore.Video.Media.EXTERNAL_CONTENT_URI; 
                ContentResolver cr = this.getContentResolver();
                Cursor cursor = cr.query(originalUri, null, null, null, null);
                if (cursor == null) {
                    return;
                }
                for (cursor.moveToFirst();!cursor.isAfterLast(); cursor.moveToNext()) {
                    long thumbNailsId = cursor.getLong(cursor   .getColumnIndex("_ID"));
                    Bitmap bitmap = MediaStore.Images.Thumbnails.getThumbnail(cr,
                            thumbNailsId, Video.Thumbnails.MICRO_KIND, null);
                    //若为视频则为 
//                  Bitmap bitmap = MediaStore.Video.Thumbnails.getThumbnail(cr, 
//                          thumbNailsId, Video.Thumbnails.MICRO_KIND, null); 
                    return bitmap;
                }

 

Uri originalUri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
    //若为视频则为MediaStore.Video.Media.EXTERNAL_CONTENT_URI;
    ContentResolver cr = this.getContentResolver();
    Cursor cursor = cr.query(originalUri, null, null, null, null);
    if (cursor == null) {
     return;
    }
    for (cursor.moveToFirst();!cursor.isAfterLast(); cursor.moveToNext()) {
     long thumbNailsId = cursor.getLong(cursor .getColumnIndex("_ID"));
     Bitmap bitmap = MediaStore.Images.Thumbnails.getThumbnail(cr,
       thumbNailsId, Video.Thumbnails.MICRO_KIND, null);
     //若为视频则为
//     Bitmap bitmap = MediaStore.Video.Thumbnails.getThumbnail(cr,
//       thumbNailsId, Video.Thumbnails.MICRO_KIND, null);
     return bitmap;
    }