- A Dribbble App by Android Architecture
------------------edit log----------------------
- 修改列表缓存, 改用OkHttp请求缓存(2小时缓存, 下拉刷新的时候不使用缓存); 存在问题: 下拉刷新只有第一个请求不使用缓存, 如何强制后面页面的请求不使用缓存?
- 增加用户页面, MVP模式;
- 增加数据中间层对象: Resource, 用于判断数据结果状态:Success,Loading, Error;
- 分页请求bug:当结果成功或失败的时候,一定要removeObserver(), 防止数据库变化导致数据重复更新;
- 数据库逻辑:针对分页的数据,增加字段page(表示页面id),删除和查询都通过where page = pageId;
- 增加TypeConverter:数据库不支持的类型转化为json字符串;
- 增加list adapter: BaseListRecyclerViewAdapter处理loading,error等viewholder; ListRecyclerViewAdapter处理list数据;
- 数据库缓存列表数据只缓存前3页, 通过对比数据确定是否更新数据库;
- 引入Retrofit封装module: service
- 初步实现 UI-ViewModel-Repository(db and http) 三层架构;
- 通过LiveData与Room数据库结合,由model数据层变化驱动界面的变化,并实现数据持久化;