Android图片加载框架Glide、Picaso、Fresco的选择

第一、依需求而定微笑;对于一般需求,图片的加载推荐使用Glide。

英文原文 Introduction to Glide, Image Loader Library for Android, recommended by Google

首发地址  http://jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0327/2650.html

参考资料:http://fresco-cn.org/docs/getting-started.html#_   
http://www.wfuyu.com/technology/23636.html
fresco是facebook推出的一款强大的android图片处理库, github地址:https://github.com/facebook/fresco 里面有官方的使用配置文档,而且是中文的。

第二、说一下Glide、Picaso、Fresco三者的区 别:

Picasso

[js]  view plain  copy
  1. dependencies {  
  2.     compile 'com.squareup.picasso:picasso:2.5.1'  
  3. }  

Glide

[js]  view plain  copy
  1. dependencies {  
  2.     compile 'com.github.bumptech.glide:glide:3.5.2'  
  3.     compile 'com.android.support:support-v4:22.0.0'  
  4. }  

  5. Glide加载图片的方法和Picasso如出一辙。

    Picasso

    [js]  view plain  copy
    1. Picasso.with(context)  
    2.     .load("http://inthecheesefactory.com/uploads/source/glidepicasso/cover.jpg")  
    3.     .into(ivImg);  

    Glide

    [js]  view plain  copy
    1. Glide.with(context)  
    2.     .load("http://inthecheesefactory.com/uploads/source/glidepicasso/cover.jpg")  
    3.     .into(ivImg);  
    虽然两者看起来一样,但是Glide更为容易使用,因为Glide的with方法不光接受Context,还接受Activity 和 Fragment,Context会自动的从他们获取,同时将 Activity/Fragment 作为 with()参数的好处是:图片加载会和 Activity/Fragment 的生命周期保持一致,比如 Paused 状态在暂停加载,在 Resumed 的时候又自动重新加载,并且 Glide 在缓存策略和加载 gif 方面略胜一筹。这样使用起来更为方便!!!
Glide加载的图片的默认格式是RGB-565的,而Picasso加载的图片格式是ARGB-8888的,所以在还原真实图片大小时,Picasso显示的更为平滑一些,即使Glide使用ARGB-8888格式,内存开销也是比Picasso要小的多;主要Glide能够加载GIF格式的图片,而Picasso不能;
Fresco
内存管理

Fresco 的最大亮点在于它的内存管理。解压后的图片,即 Android 中的 Bitmap ,占用大量的内存,在 Android 5.0以下系统中,这会显著地引发界面卡顿。而使用 Fresco 将很好地解决这个问题,Fresco 会将图片放到一个特别的内存区域,当图片不再显示的时候,占用的内存会自动被释放,这会使得 APP 更流畅,减少因图片内存占用而引发的 OOM。当 APP 包含的图片较多时,这个效果尤其明显。Fresco 支持图像的渐进式呈现,渐进式的图片格式先呈现大致的图片轮廓,然后随着图片下载的继续,逐渐呈现清晰的图片,这在低网速情况下浏览图片十分有帮助,可以带来更好地用户体验。另外,Fresco 支持加载 gif 图,支持 WebP 格式,但是Fresco的SDK被gridle打包之后发布release版本时,APP大小能增加几M,这对于一般的APP来说,并没有大量的图片需要显示的需求。显然是不适用的,所以推荐使用Glide。







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值