fresco简单配置最大缓存大小

原创 2015年11月18日 11:07:02
private static int MAX_MEM = 30* ByteConstants.MB;
    private ImagePipelineConfig getConfigureCaches(Context context) {
        final MemoryCacheParams bitmapCacheParams = new MemoryCacheParams(
                MAX_MEM,// 内存缓存中总图片的最大大小,以字节为单位。
                Integer.MAX_VALUE,// 内存缓存中图片的最大数量。
                MAX_MEM,// 内存缓存中准备清除但尚未被删除的总图片的最大大小,以字节为单位。
                Integer.MAX_VALUE,// 内存缓存中准备清除的总图片的最大数量。
                Integer.MAX_VALUE);// 内存缓存中单个图片的最大大小。

        Supplier<MemoryCacheParams> mSupplierMemoryCacheParams = new Supplier<MemoryCacheParams>() {
            @Override
            public MemoryCacheParams get() {
                return bitmapCacheParams;
            }
        };
        ImagePipelineConfig.Builder builder = ImagePipelineConfig.newBuilder(context);
        builder.setBitmapMemoryCacheParamsSupplier(mSupplierMemoryCacheParams);
        return builder.build();
    }

    private void frescoInit() {
        Fresco.initialize(this, getConfigureCaches(this));
//        Fresco.initialize(this);
    }

Fresco的缓存机制

Fresco的图片获取及缓存由ImagePipeline模块实现,具体见下图: 图1 三级缓存三级缓存1.Bitmap缓存Bitmap缓存存储Bitmap对象,这些Bitmap对象可以立刻用来...

Fresco 使用要点(不定期更新)

研究Fresco有段时间了,在内存使用上的确要比UIL的好挺多,但同时Fresco的使用也些许复杂,还有很多陷阱。 除了参看官方文档外,还需要注意一下问题: 一、配置 1、ImagePipelin...
  • ceabie
  • ceabie
  • 2016年05月16日 19:30
  • 4074

Fresco 5.0以上内存持续增长问题优化

fresco是android一款比较好的图片处理框架,特别是在5.0以下,效果很佳。在5.0以下系统,Fresco将图片放到一个特别的内存区域ashmem中。这块内存我们通过android studi...

Fresco图片加载(二)

上篇文章讲了fresco图片最基本的加载方式,这篇讲讲他的进阶基本概念: Drawees Drawee是图片的渲染控件,有三部分组成,类似MVC框架.DraweeView继承自Android的Vi...

Fresco源码解析 - 初始化过程分析

使用Fresco之前,一定先要进行初始化,一般初始化的工作会在Application.onCreate()完成,当然也可以在使用Drawee之前完成。Fresco本身提供了两种初始化方式,一种是使用使...
  • FeeLang
  • FeeLang
  • 2015年05月01日 13:58
  • 11725

关于Fresco的三级缓存机制

三级缓存 1.Bitmap缓存 Bitmap缓存存储Bitmap对象,这些Bitmap对象可以立刻用来显示或者用于后处理 在5.0以下系统,Bitmap缓存位于ashmem,这样Bitmap对象...

使用Fresco加载图片

Fresco是facebook推出的一款强大的图片加载的框架,我们都知道,在手机上,每一个像素的R、G、B和alpha通道总共要占用4byte的空间,而Fresco可以最大限度节省空间和CPU时间,它...

关于fresco的使用之--CacheKey获取本地缓存

最近自己做了一个app涉及到分享图片以及gif文件,查看过多个框架最终决定使用Facebook的fresco框架,功能很强大,具体可以看git链接https://github.com/desmond1...
  • asfhwh
  • asfhwh
  • 2016年01月04日 15:27
  • 2802

Fresco正传(7):如何手动清理Fresco的缓存。

前言这篇是随手写的,有博友在楼下提问相关问题。这里先把我知道的方案放这里,以后有空详细写。另外,请注意:虽然我找到了如何清理缓存的方法,但是目前还未实际测试过。请自行测试哦。...

Fresco源码解析 - 创建一个ImagePipeline(一)

在Fresco源码解析 - 初始化过程分析章节中,我们分析了Fresco的初始化过程,两个initialize方法中都用到了 ImagePipelineFactory类。ImagePipelineFa...
  • FeeLang
  • FeeLang
  • 2015年05月02日 02:10
  • 10488
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:fresco简单配置最大缓存大小
举报原因:
原因补充:

(最多只允许输入30个字)