如何获得视频的唯一ID

问题描述:

在我的应用程序中,我试图在一个Activity的列表视图中显示视频列表,并且我试图在另一个Activity中显示所选视频的缩略图,因为我获得了一个代码显示在ImageView缩略图,如何获得视频的唯一ID

iv = (ImageView)findViewById(R.id.imagePreview); 
ContentResolver crThumb = getContentResolver(); 
BitmapFactory.Options options=new BitmapFactory.Options(); 
options.inSampleSize = 1; 
Bitmap curThumb = MediaStore.Video.Thumbnails.getThumbnail(crThumb, id, MediaStore.Video.Thumbnails.MICRO_KIND, options); 
iv.setScaleType(ScaleType.CENTER_CROP); 
iv.setImageBitmap(curThumb); 
在这个

它显示的缩略图只有当我在

Bitmap curThumb = MediaStore.Video.Thumbnails.getThumbnail(crThumb, id, MediaStore.Video.Thumbnails.MICRO_KIND, options); 

指定id一个整数值,但我想是让id值f或选定的视频,以便我可以根据需要显示新的Activity

谢谢。


String[] projection = { BaseColumns._ID, MediaColumns.DATA };    
Cursor cursor = managedQuery(data, projection, null, null, null); 
cursor.moveToFirst(); 
int columnIndex = cursor.getColumnIndexOrThrow(BaseColumns._ID); 
int id = cursor.getInt(columnIndex); 

该代码会帮助你,“数据”是选定的视频

+0

肯定的是,代码工作的事实?我尝试使用 - Uri videoUri = Uri.fromFile(new File(videoFilePath)); - 获取uri来使用,但调用managequery总是返回一个空对象。是的,videoFilePath是一个工作路径 – Rainbowbreeze 2011-10-13 09:07:00

的URI试试这个:详细Click Here

int id = cursor.getInt(cursor.getColumnIndex(MediaStore.Video.Media._ID)); 
String[] thumbColumns = { MediaStore.Video.Thumbnails.DATA, 
MediaStore.Video.Thumbnails.VIDEO_ID}; 
Cursor thumbCursor = managedQuery(MediaStore.Video.Thumbnails.EXTERNAL_CONTENT_URI, 
thumbColumns, MediaStore.Video.Thumbnails.VIDEO_ID + "=" + id, null, null); 
if (thumbCursor.moveToFirst()) { 
     Log.v("VideoGallery",thumbCursor.getColumnIndex(MediaStore.Video.Thumbnails.DATA)); 
}