我试过了:
ThumbnailUtils.createVideoThumbnail(uri.getPath(),
MediaStore.Video.Thumbnails.MINI_KIND);
但是对于内容Uri
,这将返回null。我也试过这个:
private Bitmap getVideoThumbnail(Context context, Uri uri) throws IllegalArgumentException,
SecurityException{
MediaMetadataRetriever retriever = new MediaMetadataRetriever();
retriever.setDataSource(context,uri);
return retriever.getFrameAtTime();
}
这适用于文件方案和内容方案Uri
。但是需要大约1.5秒来获取代表阻止UI的远程数据的内容Uri
的缩略图。我想我可以使这个异步并接收缩略图是一个回调。但我认为必须有一种更简单的方法来获取文件和内容Uri
的缩略图。此方法也会偶尔抛出IllegalArgumentException
。
那么,有没有办法可靠地从文件或内容Uri
方案中获取缩略图?