Android数据缓存框架 - 跟着我的思路去设计

一款卓越的app,它的数据肯定不是写死在本地代码中的,而是从互联网中获取得到的。由于网络数据的不稳定性,所以我们需要对数据进行缓存。意图就是在用户手机没有网络的时候,也能够加载之前缓存好的数据,从而提升用户体验。

**数据缓存的类型。** 数据总共是有几个来源的,互联网、手机内存、手机磁盘。

**数据缓存的结构。** 业务数据通常被分为两大类,列表数据和非列表数据。

**数据缓存的流程。** 服务器的数据,我们通过请求api接口可以获取到,获取到之后我们一般的处理流程就是直接显示在UI上了。也有的开发人员考虑到数据缓存这一块,但是是每个业务都写一遍增删改查。这样固然也能保证数据的缓存,但是,团队成员能力不一致将可能导致某个成员忽略这一块从而造成app整体的不一致。每次都写一遍这样的代码,也是很繁琐的。比较好的做法是,请求api接口后通过json解析,得到model数据,缓存一份数据到sqlite数据库,然后才显示在UI上。那么在下次无论用户手机有无网络,都能很好的展示这部分数据。如果用户手机有网,同一界面同一区域的数据会再次走一下这个流程,但是框架发现数据原先是有的,就会覆盖原数据(原数据先删除,再重新缓存)。如果用户手机无网,则会直接从缓存中读取正确的数据并显示在UI上。

**数据缓存的使用场景。** 比如电商的订单记录数据、聊天的离线消息以及一些其他重要的,希望用户在没网的时候也能回味的数据。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dora丶Android

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值