添加依赖 compile 'io.reactivex.rxjava2:rxjava:2.0.0-RC5' compile 'io.reactivex.rxjava2:rxandroid:2.0.0-RC1...' ---- 基理 Observable和Observer通过subscribe()方法实现订阅关系; Rxjava中是自动发送事件的, 一旦订阅就开始发送; ---- 基本使用三个步骤 ?...Observable, Emitter是发射器的意思, 在subscribe方法中不断调用发射器的方法; 总共有onNext()、onComplete()、onError()三个方法; 用法参考Rxjava1...Observer对应的方法就会被调用; onError()和onComplete是互斥的,一次只能调用一个; 第三步,订阅, observable.subscribe(observer); ---- 下面开始实战内容...:rxjava:2.0.0-RC5' implementation 'io.reactivex.rxjava2:rxandroid:2.0.0-RC1' implementation '
如果还不了解RxJava,请看文章:Android:这是一篇 清晰 & 易懂的Rxjava 入门教程 RxJava如此受欢迎的原因,在于其提供了丰富 & 功能强大的操作符,几乎能完成所有的功能需求...本系列文章主要基于 Rxjava 2.0 接下来的时间,我将持续推出 Android中 Rxjava 2.0 的一系列文章,包括原理、操作符、应用场景、背压等等 ,有兴趣可以继续关注Carson_Ho...具体实现 原理 采用 RxJava 组合操作符中的combineLatest() 实现 关于组合操作符中的combineLatest() 的使用请看文章::Android RxJava:组合 /...Demo地址 Carson_Ho的Github地址 = RxJava2实战系列:联合判断 5....总结 本文主要讲解了 Rxjava的实际开发需求场景:联合判断 下面我将结合 实际场景应用 & Rxjava的相关使用框架(如Retrofit、Eventbus) ,继续对 Android中 Rxjava
如果还不了解RxJava,请看文章:Android:这是一篇 清晰 & 易懂的Rxjava 入门教程 RxJava如此受欢迎的原因,在于其提供了丰富 & 功能强大的操作符,几乎能完成所有的功能需求...今天,我将为大家带来 Rxjava创建操作符的常见开发应用场景:联想搜索优化需求 ,并结合Retrofit 与RxJava 实现,希望大家会喜欢。...本系列文章主要基于 Rxjava 2.0 接下来的时间,我将持续推出 Android中 Rxjava 2.0 的一系列文章,包括原理、操作符、应用场景、背压等等 ,有兴趣可以继续关注Carson_Ho...注:关于 Rxjava中的debuounce() 操作符的使用请看文章:Android RxJava:过滤操作符 全面讲解 ---- 3....Demo地址 Carson_Ho的Github地址 = RxJava2实战系列:联想搜索优化 ---- 5.
如果还不了解RxJava,请看文章:Android:这是一篇 清晰 & 易懂的Rxjava 入门教程 RxJava如此受欢迎的原因,在于其提供了丰富 & 功能强大的操作符,几乎能完成所有的功能需求...今天,我将为大家带来 Rxjava创建操作符的常见开发应用场景:功能防抖需求 ,并结合Retrofit 与RxJava 实现,希望大家会喜欢。...注:关于 Rxjava中的throttleFirst() 操作符的使用请看文章:Android RxJava:过滤操作符 全面讲解 ---- 3....Demo地址 Carson_Ho的Github地址 = RxJava2实战系列:功能防抖 ---- 5....总结 本文主要讲解了 Rxjava的实际开发需求场景:功能防抖需求 下面我将结合 实际场景应用 & Rxjava的相关使用框架(如Retrofit、Eventbus) ,继续对 Android中 Rxjava
如果还不了解RxJava,请看文章:Android:这是一篇 清晰 & 易懂的Rxjava 入门教程 RxJava如此受欢迎的原因,在于其提供了丰富 & 功能强大的操作符,几乎能完成所有的功能需求...今天,我将为大家带来 Rxjava创建操作符的常见开发应用场景:轮询需求 ,并结合Retrofit 与RxJava 实现,希望大家会喜欢。...'io.reactivex.rxjava2:rxjava:2.0.1' compile 'io.reactivex.rxjava2:rxandroid:2.0.1' // Android 支持 Retrofit...Demo地址 Carson_Ho的Github地址 = RxJava2实战系列:轮询 ---- 5....总结 本文主要讲解了 Rxjava创建操作符的实际开发需求场景:轮询需求 ,并结合Retrofit 与RxJava 实现 接下来的时间,我将持续推出 Android中 Rxjava 2.0 的一系列文章
Further reading: https://github.com/ReactiveX/RxJava/wiki/Plugins"); // 调用ObservableCreate的subscribeActual
一、RxJava 简介 1、RxJava 概念 RxJava 框架 是一个 异步编程函数库 , 包含了如下要素 : 观察者模式 迭代器模式 函数式编程 RxJava 框架应用场景 : 异步操作 事件流...2、RxJava 组成 - 被观察者 / 观察者 / 订阅 / 操作符 RxJava 组成要素 : Observable(被观察者): Observable 是一个 可以发送消息的数据源 , 可以同时发送若干消息...可以进行消息的 过滤、变换、合并、组合等操作 ; 3、RxJava 适用场景 RxJava 通过 组合调用 / 链式调用 被观察者 / 观察者 / 订阅 / 操作符 要素 ; RxJava 可以简化...RxJava 还支持 线程切换 / 并发处理 / 错误处理 ,利于处理各种 并发 和 异步 操作。...RxJava 异步编程库,蕴含了 响应式编程 思想 ,提供了 简洁、灵活和可组合 的方式 来 处理 异步任务 和 事件流。
如果还不了解RxJava,请看文章:Android:这是一篇 清晰 & 易懂的Rxjava 入门教程 RxJava如此受欢迎的原因,在于其提供了丰富 & 功能强大的操作符,几乎能完成所有的功能需求...今天,我将为大家带来 Rxjava创建操作符的常见开发应用场景:合并数据源需求 ,并结合Retrofit 与RxJava 实现,希望大家会喜欢。...实战系列:合并数据源 3.2 采用Zip()操作符 关于操作符Zip() 的使用请看文章:Android RxJava:组合 / 合并操作符 详细教程 功能说明 在该例中,我将结合结合 Retrofit...'io.reactivex.rxjava2:rxjava:2.0.1' compile 'io.reactivex.rxjava2:rxandroid:2.0.1' // Android 支持 Retrofit...总结 本文主要讲解了 Rxjava的实际开发需求场景:合并数据源需求 ,并结合Retrofit 与RxJava 实现 下面我将结合 实际场景应用 & Rxjava的相关使用框架(如Retrofit、Eventbus
1.2 示例代码 这里,我们针对上面提到的三个问题,使用RxJava2提供的三个操作符进行了优化: 使用debounce操作符,当输入框发生变化时,不会立刻将事件发送给下游,而是等待200ms,
如果还不了解RxJava,请看文章:Android:这是一篇 清晰 & 易懂的Rxjava 入门教程 RxJava如此受欢迎的原因,在于其提供了丰富 & 功能强大的操作符,几乎能完成所有的功能需求...今天,我将为大家带来 Rxjava创建操作符的实际开发需求场景:网络请求嵌套回调 需求 ,并结合Retrofit 与RxJava 实现,希望大家会喜欢。...'io.reactivex.rxjava2:rxjava:2.0.1' compile 'io.reactivex.rxjava2:rxandroid:2.0.1' // Android 支持 Retrofit...Demo地址 Carson_Ho的Github地址 = RxJava2实战系列:网络请求嵌套回调 喜欢的麻烦点个star! ---- 5....总结 本文主要讲解了 Rxjava 变换操作符的实际开发需求场景:嵌套回调需求 ,并结合Retrofit 与RxJava 实现 接下来的时间,我将持续推出 Android中 Rxjava 2.0 的一系列文章
RxJava Operators By Category Creating Observables 创建 Operators that originate new Observables.
前言: 现在面试很多都会问RxJava的源码,直接讲RxJava的源码,估计大家都不太会看下去,我们先看个小考题,然后再去看相关的源码。...isDisposed(); i++) { T value = a[i]; /*我们知道在RxJava 1的时候我们发送一个null值是可以的..., 但是RxJava2就不行了,因为做了一个判空操作。...而情形二其实不是考验RxJava的源码基础,而是考验 Java基础。...具体可以参考这篇:Java值传递以及引用的传递、数组的传递 结语: 所以本章我们更多地看了Rxjava的Observable生成及Observer订阅时候的部分源码及Java值传递等相关知识。
示例代码 这里,我们针对上面提到的三个问题,使用RxJava2提供的三个操作符进行了优化: 使用debounce操作符,当输入框发生变化时,不会立刻将事件发送给下游,而是等待200ms,如果在这段事件内
有人说『RxJava 真是太好用了』,有人说『RxJava 真是太难用了』,另外更多的人表示:我真的百度了也谷歌了,但我还是想问: RxJava 到底是什么?...鉴于 RxJava 目前这种既火爆又神秘的现状,而我又在一年的使用过程中对 RxJava 有了一些理解,我决定写下这篇文章来对 RxJava 做一个相对详细的、针对 Android 开发者的介绍。...RxJava 提供了对事件序列进行变换的支持,这是它的核心功能之一,也是大多数人说『RxJava 真是太好用了』的最大原因。...不过 RxJava 的变换远不止这样,它不仅可以针对事件对象,还可以针对整个事件队列,这使得 RxJava 变得非常灵活。...因此,我写了这篇《给 Android 开发者的 RxJava 详解》,希望能给始终搞不明白什么是 RxJava 的人一些入门的指引,或者能让正在使用 RxJava 但仍然心存疑惑的人看到一些更深入的解析
Rxjava四要素 被观察者 在Rxjava当中, 决定什么时候触发事件, 决定触发什么样的事件; 观察者 决定事件触发的时候将产生什么样的行为; 类似于传统观察者模式, 观察者会随着被观察者的状态变化而发生相应的操作...其中,其实Subscriber就是我们的观察者; 后面的Rxjava源码阅读中, 我们会发现Observer在源码中也会被转换成Subscriber来进行相应的处理, 所有才说其实Subscriber...第二步, 创建观察者Observer/Subscriber,即第二个要素, 1.在传统的观察者模式当中,观察者只有一个update()方法, 在其中根据被观察者的状态变化而做出反应/改变; 而在Rxjava...的一种简单的使用, 主要是理解一下Rxjava对传统观察者设计模式的拓展和改进; 实际情况当中,其实它还包括了很多操作符, 以及Rxjava最核心的线程控制调度, 这两部分是Rxjava的核心...package com.example.jiajiemu.a11.rxjava; import rx.Observable; import rx.Observer; import rx.Subscriber
如果还不了解RxJava,请看文章:Android:这是一篇 清晰 & 易懂的Rxjava 入门教程 RxJava如此受欢迎的原因,在于其提供了丰富 & 功能强大的操作符,几乎能完成所有的功能需求...本系列文章主要基于 Rxjava 2.0 接下来的时间,我将持续推出 Android中 Rxjava 2.0 的一系列文章,包括原理、操作符、应用场景、背压等等 ,有兴趣可以继续关注Carson_Ho...注:关于 Rxjava中的创建操作符firstElement()和 concat()的使用请看文章 Android RxJava:最基础的操作符详解 - 创建操作符 Android RxJava...Demo地址 Carson_Ho的Github地址 = RxJava2实战系列:从磁盘 / 内存缓存中 获取缓存数据 ---- 5....总结 本文主要讲解了 Rxjava的实际开发需求场景:从磁盘 / 内存缓存中 获取缓存数据 下面我将结合 实际场景应用 & Rxjava的相关使用框架(如Retrofit、Eventbus) ,继续对
io.reactivex.rxjava3 rxjava 3.0.3
本章节中部分概念摘自《RxJava Essentials》一书 RxJava的来历 Rx是微软.Net的一个响应式扩展,Rx借助可观测的序列提供一种简单的方式来创建异步的,基于事件驱动的程序。...并于13年二月份正式向外展示了RxJava。 从语义的角度来看,RxJava就是.NET Rx。从语法的角度来看,Netflix考虑到了对应每个Rx方法,保留了Java代码规范和基本的模式。...什么是RxJava 那么到底什么是RxJava呢?我对它的定义是:RxJava本质上是一个异步操作库,是一个能让你用极其简洁的逻辑去处理繁琐复杂任务的异步事件库。...RxJava好在哪 Android平台上为已经开发者提供了AsyncTask,Handler等用来做异步操作的类库,那我们为什么还要选择RxJava呢?答案是简洁!...(此例子思路来源于扔物线的给Android开发者的RxJava详解一文) 使用RxJava的写法是这样的: 从上面这段代码我们可以看到:虽然代码量看起来变复杂了,但是RxJava的实现是一条链式调用,没有任何的嵌套
在 RxJava2.x 中,原先RxJava1.x的Schedulers.test()被去掉了,想要获得TestScheduler对象可以通过直接new TestScheduler()的方式来实现。...p=979 https://github.com/ReactiveX/RxJava/wiki/What's-different-in-2.0
作者:aprz512 原文:http://lyldalek.cn/2018/01/06/RxJava-%E6%BA%90%E7%A0%81%E5%88%86%E6%9E%901/ 前言 本篇的文章是基于...Rxjava 2.1.2。...从下面的一段代码中,我们从源码的角度分析 RxJava 的实现原理: ObservableOnSubscribe oos = new ObservableOnSubscribe<Integer...AndroidSchedulers.mainThread()) .subscribeOn(Schedulers.computation()) .subscribe(o); 分析源码之前,我们先定义一下名词,RxJava...如此,RxJava 的一个流程就理清楚了。这货的流程和 OkHttp 怎么有点像,只是稍微有点不一样。
领取专属 10元无门槛券
手把手带您无忧上云