极客日报,一款纯粹的阅读App,基于Material Desig
GeekNews
极客日报,一款纯粹的阅读App,基于Material Design + MVP + RxJava + Retrofit + Dagger2 + Realm + Glide
项目地址:https://github.com/codeestX/GeekNews
出于学习的目的做了这款Material Design风格的简洁的阅读应用,基本涵盖了当前Android端开发最常用的主流框架,阅读内容目前包括知乎日报、微信精选、干货集中营,知识、新闻、福利一网打尽,后期会持续更新,坚持在这个项目上实践最新的技术,也会争取拓展更多的阅读内容
Preview
Download APK
Points
-
使用RxJava配合Retrofit2做网络请求
-
使用RxUtil对线程操作和网络请求结果处理做了封装
-
使用RxPresenter对订阅的生命周期做管理
-
使用RxBus来方便组件间的通信
-
使用RxJava其他操作符来做延时、轮询、转化、筛选等操作
-
使用okhttp3对网络返回内容做缓存,还有日志、超时重连、头部消息的配置
-
使用Material Design控件和动画
-
使用MVP架构整个项目,对应于model、ui、presenter三个包
-
使用Dagger2将M层注入P层,将P层注入V层,无需new,直接调用对象
-
使用Realm做阅读记录和收藏记录的增、删、查、改
-
使用Glide做图片的处理和加载
-
使用Fragmentation简化Fragment的操作和懒加载
-
使用RecyclerView实现下拉刷新、上拉加载、侧滑删除、长按拖曳
-
使用WebView做阅览页,通过修改其配置达成各种需要的功能
-
使用原生的夜间模式、分享、反馈
-
包含搜索、收藏、检测更新(尚未实现)等功能
-
所有踩到的坑都在项目里做了注释
Thanks
API:
APP:
Hot 提供了Dagger2配合MVP的架构思路
知了日报 提供了部分设计思路
还参考了很多大神的类似作品,感谢大家的开源精神
RES:
iconfont 提供了icon素材
material UP 提供了Material Design风格的素材
<b>最后:本人初学不久,能力有限,项目还有很多细节不够完善,欢迎交流,共同进步 (´・ω・`)