简介
在泰国举行的谷歌开发者论坛上,谷歌为我们介绍了一个名叫 Glide 的图片加载库,作者是 bumptech。这个库被广泛的运用在 google 的开源项目中,包括 2014 年 google I/O 大会上发布的官方 app。
特点
(1)使用简单
(2)可配置度高,自适应程度高
(3)支持常见图片格式 : Jpg png gif webp
(4)支持多种数据源: 网络、本地、资源、Assets 等
(5)高效缓存策略: 支持 Memory 和 Disk 图片缓存,默认 Bitmap 格式采用 RGB_565, 内存使用至少减少一半.
(6)生命周期集成: 根据 Activity/Fragment 生命周期自动管理请求
(7)高效处理 Bitmap : 使用Bitmap Pool 使 Bitmap 复用,主动调用 recycle 回收需要回收的 Bitmap,减小系统回收压力.
功能API介绍:
1)简单使用:
Glide
.with(this)
.load("http://xxx.com/source/a.png")
.into(imageView);
2)Glide.with() 的使用
(1)with(Context context). 使用 Application 上下文,Glide 请求将不受 Activity/Fragment 生命周期控制。
(2)with(Activity activity).使用 Activity 作为上下文,Glide 的请求会受到 Activity 生命周期控制。
(3)with(FragmentActivity activity).Glide 的请求会受到FragmentActivity 生命周期控制。
(4)with(android.app.Fragment fragment).Glide 的请求会受到Fragment 生命周期控制。
(5)with(android.support.v4.app.Fragment fragment).Glide 的请求会受到 Fragment 生命周期控制。
3)load() 的使用
Glide 基本可以 load 任何可以拿到的媒体资源
- SD 卡资源:
load(“file://”+ Environment.getExternalStorageDirectory().getPath()+”/test.jpg”)- assets 资源:
load(“file:///android_asset/3.gif”)- raw 资源:
load(“Android.resource://com.frank.glide/raw/raw_1”) 或load(“android.resource://com.frank.glide/raw/”+R.raw.raw_1)- drawable 资源:
load(“android.resource://com.veyron.glide/drawable/news”)或load(“android.resource://comveyron.glide/drawable/”+R.drawable.news)- ContentProvider 资源:
load(“content://media/external/images/media/139469”)- http 资源