Android-图片加载框架对比
一般项目中,用得最多的应该有:UniversalImageLoader、Picasso、Fresco、Glide这几种。
简单地分析下各个框架的情况:
① UniversalImageLoader
比较老的图片加载库,现在已经停止维护了。不建议使用。虽然以前很火。
② Picasso
GitHub - square/picasso: A powerful image downloading and caching library for Android
Picasso 是 Square 公司出的,功能强大并且调用简洁,如下所示:
Picasso.with(context).load("http://www.baidu.com/123.png").into(imageView);
以上代码就是给一个 ImageView 加载远程图片的一个示例.
③ Fresco
GitHub - facebook/fresco: An Android library for managing images and the memory they use.
Fresco 是 Facebook 出的,优点在于Fresco是在Native层优化内存,避免OOM出现。
缺点是使用相对麻烦点,而且导入包体积不小。
④ Glide
Glide 是 Google出品,基于Picasso和Picasso一样使用简洁。
Glide 的 Bitmap 格式是 RGB_565 格式,而 Picasso 是 ARGB_8888 格式,代表着内存消耗少。
Glide的存储是动态的,是根据你的屏幕控件大小,来缓存对应尺寸的图片到本地内存,好处是节省存储空间、加载速度也变快。
还有就是Glide支持GIF。
SO!一般情况下,用Glide就足够了。Fresco其实也非常好,如果你的app是多图、社交类的app的话。