《易读》一个模仿网易云音乐UI,Rxjava+Retrofit+dagger2+MVP的开源项目

易读
一款模仿网易云音乐UI,使用Retrofit + RxJava + dagger2 + MVP的阅读类开源项目。本项目对网络返回进行了统一处理,抽取BaseActivity和BaseFragment非常具有学习意义,dagger2的分包结构以及使用都是教科书级别的。
github项目地址:易读

APP下载地址或者github中APP下载地址大家觉得项目构建慢的话,可以先下载来玩玩看,支持5.0以上,本项目可以支持4.0以上不过部分动画会失效,如果要用4.0-5.0的自己去gradle里面修改。

效果图

  • 截图


    《易读》一个模仿网易云音乐UI,Rxjava+Retrofit+dagger2+MVP的开源项目_第1张图片
    首页图片
《易读》一个模仿网易云音乐UI,Rxjava+Retrofit+dagger2+MVP的开源项目_第2张图片
首页详情页
《易读》一个模仿网易云音乐UI,Rxjava+Retrofit+dagger2+MVP的开源项目_第3张图片
电影详情页
《易读》一个模仿网易云音乐UI,Rxjava+Retrofit+dagger2+MVP的开源项目_第4张图片
豆瓣电影TOP250
  • GIF
项目演示

项目结构

  • 首页:首页由知乎日报,知乎热门等几个知乎接口组合而成。由4个接口经过拼接而来的。
  • 头条:网易新闻不过由于API不全所以详情页的时候不是完整的。
  • 豆瓣电影TOP250和最新电影: 由豆瓣提供的接口一小时一个IP只能访问20次,如果出错了可能是次数到达上限了。
  • Android:gankio的API有上拉加载更多和下拉刷新,这里有很多Android的知识可以学习。
  • 最值得学习的:本项目最值得学习的是框架的搭建,大家可以必须认真看Base的抽取以及页面的几种状态,网络返回也做了统一处理。最好可以看着项目自己在敲一遍,BaseActivity还添加了侧滑关闭哦,而且完全是作者自己想出来的。

项目用到的知识点

  • 遵循Material Design设计风格。
  • Rxjava+Retrofit2网络请求,并进行封装错误可以进行统一处理。
  • Dagger2将M层注入P层,将P层注入V层,无需new,直接调用对象。
  • 抽取BaseActivity和BaseFragment,非常值得学习。
  • BaseRecyclerViewAdapterHelper+RecyclerView完成下拉刷新,上拉加载更多。
  • Glide做图片的处理和加载
  • 使用CoordinatorLayout + AppBarLayout + CollapsingToolbarLayout。

APP:

云阅项目部分UI从该项目中获取,非常感谢作者,作者对我也有很大的帮助

GeekNews学习了他的degger2的思路

looklook参考了他的网易API。

End

后期有时间会写下本项目的研发过程,以及细节帮助大家理解。
这是一个非常值得学习的项目,希望大家可以多多star、fork、issue,
如果您有什么好的意见可以及时向我反馈,您可以在GitHub的Issues处说明问题原因,也可以通过以下方式联系我,我将根据情况尽量处理哦 ~

About me:

  • QQ: 502325525
  • : http://www.jianshu.com/users/d2f73b699192/timeline
  • CSDN: http://blog.csdn.net/laotan7237/article/details/68946797

你可能感兴趣的:(《易读》一个模仿网易云音乐UI,Rxjava+Retrofit+dagger2+MVP的开源项目)