如何从 onActivityResult Intent 获取视频缩略图?

How to Get Video Thumbnail from onActivityResult Intent?

下面是我的代码,我从 ThumbnailUtils.createVideoThumbnail

得到一个空值
Intent takePicture = new Intent(Intent.ACTION_PICK, MediaStore.Video.Media.EXTERNAL_CONTENT_URI);
takePicture.setType("video/*");
startActivityForResult(takePicture, 4);

我的视频文件选择意图的 OnResultActivity 代码:

if(requestCode == 4) {
    Uri selectedVideoUri = data.getData();
    Bitmap bitmap = ThumbnailUtils.createVideoThumbnail(selectedVideoUri.getPath(), MediaStore.Video.Thumbnails.MINI_KIND);
    Log.i("Video URI, ", String.valueOf(bitmap));
}

另外请帮助我如何从录制的视频意图中获取缩略图

Intent takeVideo = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
startActivityForResult(takeVideo, REQUEST_VIDEO_CAPTURE);

经过一些研究,我注意到 file path 不应该是 uri

你应该有这样的东西

final String noturipath = getRealPathFromUri();

Bitmap bitmap = ThumbnailUtils.createVideoThumbnail(noturipath, MediaStore.Video.Thumbnails.MICRO_KIND);

然后创建一个方法

    public string getRealPathFromUri (final Uri content)
    {
 // get intent from activity and added it here

    Uri uri;
    String stringUri;
    stringUri = uri.toString();
    }