Android实用技巧-缓存的使用
Posted _StriveG
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android实用技巧-缓存的使用相关的知识,希望对你有一定的参考价值。
1.前言
前面也几篇博客提到了缓存,但是比较零散,最近又对数据缓存有了新的认识,所以来记录下我对缓存的理解,以及我在项目中是如何使用的。
2.为什么需要数据缓存
以下为我个人看法。
- 考虑极端环境下的用户体验
- 断网情况
- 网速慢的情况
- 节省客户端流量
- 减少服务器压力
3.什么样的数据需要缓存
- 首先最需要缓存的就是图片了(这个不多说)
- 其次就是一些非常重要的数据(如app首页数据)
4.常见的数据缓存方法以及优缺点
- 文件缓存
- 优点 可以缓存超大数据(实际用途很小)
- 缺点 读写开销大
- 数据库缓存
- 优点 数据结构清晰,容易管理
- 缺点 同样读写开销大
- sharedpreferences
- 优点 操作简单,速度也比较块
- 缺点 只支持基本的数据类型
在上面的三种方法中,我个人最喜欢sharedpreference,在sharedpreference满足不了需求的情况下,会选择数据库缓存。snappy 用法简单,速度快,值得一试
5.我所知道的缓存策略
- 预先加载缓存,需手动刷新才情况数据(新浪微博)
- 预先加载缓存,同时请求新数据并更新缓存数据,但不是立马刷新界面(csdn客户端)
- 预先加载缓存,同时请求新数据并里面更新界面,切更新缓存数据
上面的三种策略各有自己的优缺点,需要更具实际需求去选择合适的策略。
6.整个过程
- 请求数据
- 读取缓存
- 回调updateview
- 继续请求新的数据
- 服务器返回结果
- 成功 更新缓存数据,更具选择的方法选择是否立即更新
- 失败
7.总结
数据缓存很重要,数据缓存很重要,数据缓存很重要。目前,也算是对数据缓存有了一些理解,也算是有了一些实践了,拿出来分享给大家。
以上是关于Android实用技巧-缓存的使用的主要内容,如果未能解决你的问题,请参考以下文章
Android Studio 使用小技巧笔记 External Tools
Android Studio 使用小技巧笔记 External Tools