Android三大图片框架的比较

本文对比了Fresco、Glide和Picasso三种图片加载框架的特点。Fresco在5.0以下系统的内存优化上表现出色;Glide能根据Activity和Fragment的生命周期进行图片加载管理;Picasso虽然加载速度一般,但图片质量高。

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

主要的图片框架:Fresco、Glide、Picasso,由于ImageLoader现已不再更新,这里将不再细说


Fresco:
特点:

1、最大的优势便在于5.0以下(最低2.3) bitmap的加载,在5.0以下系统,Fresco将图片放到一个特别的内存区域(Ashmem),而且图片不显示时,占用的内存会自动被释放,这会使APP更加流畅,减少因图片内存占用而引发的OOM。5.0以后的系统默认存储在Ashmem区了


2、图片的渐进式呈现,图片先呈现大致的轮廓,然后随着图片下载的继续,逐渐成仙清晰的图片,这对于慢网络对说,用户体验更好。


3、支持加载Git动态图和Webp格式的图片


缺点:

框架体积比较大,3M左右,会增加APK的大小



Glide:
特点:

1、Glide的with()方法可以接收activity和fragment,图片的加载会和Activity和Fragment的生命周期保持一致,比如Paused暂停加载,Resumed的时候重新加载


2、 图片默认格式为RGB565,而不是ARGB888,内存开销更小,虽然图片的清晰度差些。


3、图片缓存的尺寸是和ImageView一样的,这使得图片加载更快


4、支持加载Git动态图


Picasso:
特点:

1、图片质量高,但加载速度一般,

2、只缓存一个全尺寸的图片


总结:

Picasso能实现的功能,Glide也可以做,但Picasso体积比起Glide小而且如果项目中网络请求用的是OkHttp或者Retrofit(本质还是OkHttp),那么建议用Picasso,体积会小很多。Glide的好处是大型的图片流,比如Git,Vedeo,例如美拍、爱拍这种视频类应用。Fresco在以下的系统内存优化非常好,但代价就是体积大。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值