首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android MVP+RxJava+Retrofit (3) MVP+RxJava+Retrofit

前面说了RxJava Retrofit的基本用法,但是没用做优化的处理.本篇先做一个优化处理,然后再结合前面的MVP 设计模式,把这些知识贯穿到一个Demo 之中,方便大家理解....BaseResponseBaseObserver的封装 BaseResponse是个人自定义命名的一个类,主要用来对返回数据进行抽象。...onFailure(Throwable e, String errorMsg) { } }); 接下来我要说的 就是MVP...设计模式 下 请求网络获取商品列表并展示的过程了 这个是效果图 就是请求网络并获取商品列表的功能 根据之前 MVP 设计模式,外加RxJava+Retrofit 网络请求 整合在一起 mvp 接口管理类....client(client) .baseUrl(Constant.IP) .addCallAdapterFactory(RxJava2CallAdapterFactory.create

1.2K20

Android MVP+RxJava+Retrofit (1) MVP设计模式

最近做项目都是接别人的二手项目,发现都是MVP设计模式,感觉自己欠下了2017年的技术债,所以有必要写一篇关于MVP设计模式的博客了,在写这篇博客之前,我想了挺久的,MVP这种文章一百度一大堆,也不知道自己写的怎么样...MVP设计模式 不知道为啥很多人都在用MVP ,具体这东西哪里香 各有各的道理.个人觉得它的优势并不明显. 优点: 结构清晰,职责划分清晰,模块间充分解耦,有利于组件的重用....如果嫌手动写model Presenter contract(MVP管理类) 麻烦可以借助工具去实现,这里推荐一个插件MVP Helper 非常好用 使用的时候也很简单 然后直接生成目录 介绍完这插件该说一下...注意作为View Model 两者之间的 中间人....设计模式 在activity Fragment 中处理数据更新数据的方式进行解耦,在Presenter 中 View Model 进行逻辑处理.

40630
您找到你想要的搜索结果了吗?
是的
没有找到

Android MVP+RxJava+Retrofit (2) RxJava+Retrofit

Retrofit的使用 先简单介绍一个网络请求的例子,注解之类的放在后面去说 (1) 添加Retrofit库的依赖 implementation "io.reactivex.rxjava2:rxjava...@Headers 添加请求头 &添加不固定的请求头 @Body 以 Post方式 传递 自定义数据类型 给服务器 @Field & @FieldMap 发送 Post请求 时提交请求的表单字段,...@FormUrlEncoded 注解配合使用 @Part & @PartMap 发送 Post请求 时提交请求的表单字段,@Field的区别:功能相同,但携带的参数类型更加丰富,包括数据流,所以适用于...的使用,Retrofit RxJava 一百度就很多原理之类的大体说的都差不多,大同小异.我主要以实战为主,如何使用 稍带点基础… 初始化Retrofit的时候的必要配置: .addCallAdapterFactory...} } ); 跟上面的相比感觉也没差多少,剩下的就是封装以及优化处理了,再把前面的MVP

71730

如何实践MVP+RxJava+Retrofit(1)

(吼吼~~有不对的地方请指出==)   现在要介绍的是MVP+RxJava+Retrofit这种开发模式,那进入正题前,需要了解下前面的三个技术。别着急,一个一个来说?  ...视图层模型层存在强耦合。    2MVP-视图层V通过P(Presenter)调用模型层M的返回数据返回给视图层V使用。视图层模型层没有直接联系,降低耦合性,也有利于测试。...在应用角度上看:MVC侧重业务逻辑简单,小项目,搭建项目比较快速,但不利于分层测试;而MVP的话侧重大中型的项目,业务逻辑复杂,搭建项目也快,业务逻辑清晰,利于测试。   RxJava是啥?  ...那它和一般的handlerAsyncTask异步机制有啥不同?    使用RXjava进行异步操作你会发现不管多复杂的逻辑,Rxjava都能清晰易懂的写出来。    ...RxJava 的观察者模式大致如下图: ? 关于Retrofit的用法   Retrofitokhttp共同出自于Square公司,Retrofit就是对okhttp做了一层封装。

73250

Rxjava + retrofit + dagger2 + mvp搭建Android框架

最近出去面试,总会被问到我们项目现在采用的什么开发框架,不过据我的经验网络框架(volley)+图片缓存(uIl)+数据库(orm)+mvp,不过现在这套框架比较好了,现在采用什么呢?...Rxjava + retrofit + dagger2 + mvp。好,那我们接下来说说由这几种库来组成我们一个常用的开发框架(当然其他的还有一些什么推送什么的我们另当别论)。...借用google的一个MVP的说明图 项目总览 ?...常规的 MVP 不同的是,在 modle 层和 view 层通过EventBus 连接,当数据发生变化时,发出对应的 event,注册了这个 event 的 view会采取对应的措施。...在退出登录后,我们可能不止一个 view 会发生变化,如果把这些写在每一个 Presenter 中无疑是很不简洁的代码 在 modle 层中,抽象出了一个 DataManger,通过DataManger 我们数据的具体实现进行了解耦

928100

Android 滑动选择控件&MVP+Retrofit+RxJava资源推荐

刚好后台有很多朋友想学习MVP+Retrofit+RxJava的一些组合,这里给大家找了一些文章,比较适合目前还不太了解的同学: 带你高效学习MVP+RxJava+Retrofit http://www.jianshu.com.../p/c81c48144029 Android 教你一步步搭建MVP+Retrofit+RxJava网络请求框架http://www.jianshu.com/p/7b839b7c5884 MVP+Retrofit...+Rxjava在项目中实战解析 http://www.jianshu.com/p/644206ddbd2c 小白能看懂的MVP+RXjava+Retrofit2详细讲解http://www.jianshu.com.../p/426864584518 MVP+Retrofit+Rxjava在项目中实战解析https://juejin.im/post/596eb0faf265da6c322e0e3d MVP + Retrofit...MVP搭建Android开发框架一 http://t.cn/RYe617d Retrofit-Rxjava-Okhttp-MVP搭建Android开发框架二 http://t.cn/RYe6gRA 刚好是周五

78690

Android使用RxJava+Retrofit2+Okhttp+MVP练习的APP

Android使用RxJava+Retrofit2+Okhttp+MVP练习的APP 项目截图 这是我的目录结构 五步使用RxJava+Retrofit2+Okhttp+RxCache  第一步:导包...驱逐一组key关联的数据,使用EvictDynamicKeyGroup。...MVP MVP 就是基于MVC 的模式上的一个演化版本。在MVC模式中,Activity应该是属于View这一层。而实质上,它既承担了View,同时也包含一些Controller的东西在里面。...随着项目的迭代更新,这对开发很不友好,耦合度也原来越高,项目越来越难维护,而MVP 就是解决这样的痛点。...MVP的优点: 模型视图完全分离,我们可以修改视图而不影响模型 可以更高效地使用模型,因为所有的交互都发生在一个地方——Presenter内部 我们可以将一个Presenter用于多个视图

4.2K80

Android使用RxJava+Retrofit2+Okhttp+MVP练习的APP

Android使用RxJava+Retrofit2+Okhttp+MVP练习的APP 项目截图 这是我的目录结构 五步使用RxJava+Retrofit2+Okhttp+RxCache...驱逐一组key关联的数据,使用EvictDynamicKeyGroup。...MVP MVP 就是基于MVC 的模式上的一个演化版本。在MVC模式中,Activity应该是属于View这一层。而实质上,它既承担了View,同时也包含一些Controller的东西在里面。...随着项目的迭代更新,这对开发很不友好,耦合度也原来越高,项目越来越难维护,而MVP 就是解决这样的痛点。...MVP的优点: 模型视图完全分离,我们可以修改视图而不影响模型 可以更高效地使用模型,因为所有的交互都发生在一个地方——Presenter内部 我们可以将一个Presenter用于多个视图,而不需要改变

39420

【Dev Club分享】基于RxJava的一种MVP实现

MVP则通常用来将View业务层Model层分离开来,两者结合起来可轻松实现业务解耦、线程控制、单元测试等等强大功能 内容大体框架: Android开发框架的选择 如何一步步搭建MVP分层框架 使用RxJava...Architecture Blueprints - Github Google官方MVP示例之TODO-MVP - 简书 todo-mvp - github dev-todo-mvp-rxjava...具体的使用就不再多讲了,大家可以参考下面的文章:(Google文章名就可以了) 1.给 Android 开发者的 RxJava 详解 2.RxJava Retrofit 结合的最佳实践 3.RxJava...Q10:我们项目中采用了MVP但是没有用RxJava,mp层采用回调方式,这样m通过回调间接引用p,p层有v的引用。如果在网络情况不好频繁打开关闭页面在网络请求结束前是否会有内存泄漏问题。...Q13:为了更好的解偶每一层,你们用MVP时 是否每层都有自己的数据结构,如果有的话,层层之间的数据结构转换开销大不大?

93770

鸿蒙 MVP+ Rxjava+Retrofit+okhttp 实现教程【鸿蒙专题7】

"20vp" /> 布局效果 我们的目的很明确 我们想拿到2个输入框的内容然后调用网络接口来实现登录的操作 业务非常简单 但是今天要用 MVP...RxAndroid .addCallAdapterFactory(RxJava3CallAdapterFactory.create())...void hideLoading() { } @Override public void onError(String errMessage) { } } 到此 鸿蒙 MVP...+ Rxjava+Retrofit+okhttp 实现教程 使用起来和安卓的用法非常像 我这里很多代码是复制过来 同学们可以下载完整的代码来尝试 最后总结: 鸿蒙中MVP+ Rxjava+Retrofit...+okhttp 和安卓里面基本如出一辙 只是很少地方有些诧异,同学们如果不是很熟悉 Rxjava+Retrofit+okhttp 请先去看看官方教程 还有mvp模式的不熟悉的请切翻阅我之前的文章 。

78010

我们为什么要把Dagger2,MVP以及Rxjava引入项目中?

(文章最后有惊喜) 我们为什么要把Dagger2,MVP以及Rxjava引入项目中?...想灵活运用一个技术,必然要了解这些技术为什么出现,出现是为了解决什么问题 MVP MVP的文章很多,我这里就不做过多介绍,我个人的理解就是解耦和扩展以及团队协作,大多数文章都只是介绍了怎么写MVP接口...提到Rxjava最多人都是用来处理,线程调度,回调地狱,加上Retrofit又支持Rxjava,所以大部分开发者都只会在请求网络和需要切换线程的时候用到Rxjava,其实它有一个最重要的特性,它可以让数据的流向更加直观...,代码更清晰 举个栗子 比如说一个庞大的项目,一个事件传递的整个过程可能要经历很多方法,方法套方法,每个方法的位置七零八落,一个个方法跳进去看,跳过去跳过来很容易把脑袋弄晕,不够直观,但是Rxjava...后面我会写一篇文章,介绍它是怎么将MVP,Dagger相结合并使用到项目中的 Where? MVPArms一个Mvp快速搭建框架,如果对您有用的话不妨右上角点个star?

49630
领券