查询到 MediaStore.Video.Media.EXTERNAL_CONTENT_URI
返回唯一的视频/ SD卡/ DCIM / 100MEDIA
不过,我想缩略图的视频在我的 / SD卡/安卓/数据/ mypackage中/文件
文件夹。这可能吗?
下面是我的code部分:
ContentResolver的CR = getContentResolver();
的String [] PROJ = {
BaseColumns._ID
};
光标C = cr.query(MediaStore.Video.Media.EXTERNAL_CONTENT_URI,凸出,NULL,NULL,NULL);
如果(c.moveToFirst()){
做
{
INT的id = c.getInt(0);
位图B = MediaStore.Video.Thumbnails.getThumbnail(CR,ID,MediaStore.Video.Thumbnails.MINI_KIND,NULL);
Log.d(*****我的缩略图*****,位图的onCreate+ b)的;
ImageView的IV =(ImageView的)findViewById(R.id.img_thumbnail);
iv.setImageBitmap(B);
}
而(c.moveToNext());
}
c.close();
解决方案
如果你是在Android-8(升级Froyo)或以上,你可以使用ThumbnailUtils.createVideoThumbnail:
位图拇指= ThumbnailUtils.createVideoThumbnail(路径,
MediaStore.Images.Thumbnails.MINI_KIND);
Query to MediaStore.Video.Media.EXTERNAL_CONTENT_URI
returns only video in /sdcard/DCIM/100MEDIA
But I want to get thumbnails for video in my /sdcard/Android/data/mypackage/files
folder. Is it possible ?
Here is part of my code:
ContentResolver cr = getContentResolver();
String[] proj = {
BaseColumns._ID
};
Cursor c = cr.query(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, proj, null, null, null);
if (c.moveToFirst()) {
do
{
int id = c.getInt(0);
Bitmap b = MediaStore.Video.Thumbnails.getThumbnail(cr, id, MediaStore.Video.Thumbnails.MINI_KIND, null);
Log.d("*****My Thumbnail*****", "onCreate bitmap " + b);
ImageView iv = (ImageView) findViewById(R.id.img_thumbnail);
iv.setImageBitmap(b);
}
while( c.moveToNext() );
}
c.close();
解决方案
If you are on android-8 (Froyo) or above, you can use ThumbnailUtils.createVideoThumbnail:
Bitmap thumb = ThumbnailUtils.createVideoThumbnail(path,
MediaStore.Images.Thumbnails.MINI_KIND);