由于使用Fresco框架加载网络图片,然后又面临要分享图片的需求,于是研究了下如何使用分享fresco缓存下的图片。
已经确定缓存中有的图片:
先说思路,本来是想直接分享缓存路径中的图片缓存的,但是Fresco缓存的格式是.cnt,不能直接分享,于是通过fresco本身自带的功能获取到图片的bitmap,在将bitmap存到SD卡上,再按照sd卡上的路径进行分享。
具体实现如下:
//从缓存中获取图片的bitmap
ImageRequest imageRequest=ImageRequestBuilder.newBuilderWithSource(Uri.parse(url))
.setResizeOptions(resizeOptions)
.setAutoRotateEnabled(true)
.build();
ImagePipeline imagePipeline = Fresco.getImagePipeline();
DataSource<CloseableRefer