Fresco、Glide与Picasso的区别

本文对比了Fresco、Glide与Picasso三个图片加载框架的优缺点。Fresco内存管理出色,但方法数多;Glide加载速度快,支持多种格式;Picasso方法数少,支持优先级处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近项目当中在图片加载过程中有一些新的需求,所以研究了一下时下最火的三个图片加载框架(Fresco、Glide与Picasso)。今天就简单的记录一下,方便以后查看。

  • Fresco
优点:

1,十分强大,内存管理不用愁,不用担心OOM

2,自带图片加载过程中淡入效果,用户体验好

3,图片加载时可直接在布局中设置加载动画等等,减少代码量

缺点:

1,必须使用fresco自定义的控件,而不是android原生的ImageView,以后想要换其他图片加载框架时会比较麻烦,需要更改xml布局文件

2,方法数过多,将近4K的方法,对于较大的项目来说,很可能就是压死骆驼的最后一根稻草

3,必须全套使用fresco的图片加载,否则从缓存中获取一个bitmap都异常费劲

  • Glide

1,加载图片速度快

2,支持Gif、WebP、缩略图,甚至是Video

3,根据Activity/Fragment生命周期自动管理请求

4,默认使用RGB565格式缓存图片,缓存图片大小以imageview的尺寸为准

5,占用内存小,相较于Picasso(同一图片),但是放大图片之后显示效果又比Picasso差一点

6,方法数为2678,也不小

  • Picasso
1,方法数840,较小

2,默认使用ARGB8888格式,以图片原尺寸缓存图片

3,支持优先级处理,即每次任务调度前都会选择优先级高的任务

4,并发线程数根据网络类型而发生改变,手机更换网络类型时,会自动调整线程池最大并发数。比如wifi最大并发为4,4G为3,3G位2


以下是三个图片加载框架的GitHub地址:

总结

从项目体积角度进行比较:Fresco>Glide>Picasso,Fresco可以说是综合了之前图片加载框架的所有优点,尤其是在5.0以下的内存优化方面做的非常好,所以在图片较多的应用中更能凸显其价值,如果应用没有太多图片需求的话,还是推荐使用Glide。因为Glide相较于Picasso来说,功能更全面,在gif方面是其杀手锏,内存方面来说也是比后者优秀很多。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值