Glide / Content Provider
目录
Glide 简单知识
-
内存 - 磁盘 - 网络 三级加载
-
内存分为
weakHashMap
以及Lru cache
-
磁盘缓存策略:
DiskCacheStrategy.DATA
:只缓存原始内容DiskCacheStrategy.NONE
: 不缓存任何内容DiskCacheStrategy.RESOURCE
:只缓存转换过后的图片(经过decode,转化裁剪的图片)DiskCacheStrategy.ALL
: 既缓存原始图片, 也缓存转换过后的图片. 对于远程图片, 缓存DATA和RESOURCE. 对于本地图片, 只缓存RESOURCE.DiskCacheStrategy.AUTOMATIC
(默认策略):加载远程数据时, 仅存储原始数据(因为下载远程数据相比调整磁盘上已经存在的数据要昂贵得多), 而对于本地数据, 仅存储变换过的缩略图(RESOURCE), 因为即使你需要再次生成另一个尺寸或类型的图片, 取回原始数据也很容易
- Engine.load
-
- loadFromMemory
-
-
- loadFromActiveResources (Map<Key, ResourceWeakReference>)
-
-
-
- loadFromCache (LruResourceCache)
-
-
- waitForExistingOrStartNewJob
Content Provider
有啥用?
- 读取系统日历/媒体库(图片视频音频…)/联系人/短信…..
- 与其他应用配合, 提供广告精准推送, 比如淘宝保存了你的购物记录, 在UC浏览器打开就可能会出现你浏览过的商品(即使你没有登录)
这只是个例子 会不会真的是这样的我不确定 - framework 层开发, 给别的平台应用暴露 api