Android 客户端 MVP+Dagger2+Databinding+Rxjava+Retrofit+Okhttp3

GankClient-Kotlin

简介:kotlin 实现的干货集中营 Android 客户端 MVP+Dagger2+Databinding+Rxjava+Retrofit+Okhttp3

image

image image

gank.io kotlin 实现的干货集中营客户端

风格采用了 Material Design. 多数控件都是 design 包里面的。

项目模式

Kotlin

让你的代码量大大减少,函数式编程让你爽到飞上天!如果你想学习 Kotlin,本项目应该会给你不少帮助。

MVP

通过契约类 Contract 管理 View Model Presenter 接口。

  • Model -- 主要处理业务,用于数据的获取(如网络、本地缓存)。
  • View -- 用于把数据展示,并且提供交互。
  • Presenter -- View 和 Model 交互的桥梁,二者通过 Presenter 建立联系。

    主要流程如下: 用户与 View 交互,View 得知用户需要加载数据,告知 Presenter,Presenter 则告知 Model,Model 拿到数据反交于 Prsenter,Presenter 将数据交给 View 进行展示。

Dagger2

项目中,主要进行 presenter、model、retrofit Api 等类的注入操作。

ApiComponent

主 Component、用于注入 AppComponent、便于提供子 Component 依赖。

 依赖于:

 1.ApiModule(提供 okhttpClient、Retrofit、Api 等)

 2.AppModule(提供 context 对象(okhttp 拦截器所需))

FuckGoodsComponent

父 Component 为 ApiComponent 用于注入 FuckGoodsPresenter

 依赖于: FuckGoodsModule(提供 FuckGoodsView)

RandomComponent

父 Component 为 ApiComponent 用于注入 RandomPresenter

依赖于 : RandomModule(提供 RandomView) 

Rxjava + Retrofit + okhttp3

主要用于网络访问。

DeepLinkDispatch

基于路由进行页面转发。

GankClientUri 定义一些路由规则、URI 等

GankRouter 统一由此进行路由操作

GSON

用于 json 的解析操作。

Glide

用于图片的加载。

ByeBurGer

用于导航栏以及悬浮按钮滑动隐藏。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值