常用Android开源组件特点比较(一)

结合我之前在不同项目中用过的开源组件/框架,以思维导图的形式,整理了部分组件的特点及其参考比较,希望能够给需要的朋友提供一些帮助。

先从图片加载组件开始,后面计划整理网络、数据等方面的开源组件,欢迎继续关注。

常用Android开源组件特点比较(一)_第1张图片

文字版:

1、UIL(Universal Image Loader)

1.1 简介

1.1.1 Android平台老牌的图片下载和缓存函数库

1.1.2 功能强大、灵活且高度可定义

1.1.3 提供了一系列的配置选项以控制图片加载和缓存过程

1.2 特点

1.2.1 支持的特性

1.2.1.1 同步、异步的多线程图片加载

1.2.1.2 可自定义线程池/下载器/解码器/内存和文件缓存/图片显示选项等

1.2.1.3 支持内存缓存和文件缓存方式

1.2.1.4 可以实时监听图片加载流程、下载进度

1.2.1.5 根据控件大小对Bitmap进行裁剪,减少Bitmap占用过多的内存

1.2.2 可用性(是否方便):使用比较方便

1.2.3 技术支持

1.2.3.1 使用广泛、资料丰富

1.2.3.2 目前作者已经停止维护

1.2.4 函数库体积:162KB左右

2 Picasso

2.1 简介

2.1.1 Square公司开发,以画家毕加索为名

2.1.2 支持图片的加载和二级缓存功能

2.2 特点

2.2.1 支持的特性

2.2.1.1 在Adapter中取消不在视野的图片加载操作,避免错位问题

2.2.1.2 使用复杂的图片压缩转换来尽可能的减少内存消耗

2.2.1.3 自带内存和硬盘二级缓存功能(依赖Okhttp)

2.2.1.4 支持请求优先级

2.2.1.5 支持缓存调试操作

2.2.2 可用性(是否方便):使用非常方便

2.2.3 技术支持

2.2.3.1 使用广泛、资料丰富

2.2.3.2 作者仍在维护

2.2.4 函数库体积:120KB左右

3 二者比较

3.1 对于新项目特别是使用了Okhttp的,推荐使用Picasso

3.2 如果旧项目使用了UIL组件,一般情况下没有必要更换

4 关于Glide

4.1 Google官方的图片加载库

4.2 使用方便,和Picasso很相似

4.3 功能强大,不仅支持常见的jpg和png格式,还能显示GIF动画和视频

4.4 图片加载速度与内存占用方面优于Picasso

4.5 函数库体积相对Picasso较大(440KB左右)

你可能感兴趣的:(常用Android开源组件特点比较(一))