大家熟悉 Android 四大基本组件分别是 Activity,Service ,Content Provider内容提供者,BroadcastReceiver 广播接收器。这是刚刚接触 Android 的四大天王。
Android 四大天王随着 Android 的硬件不断升级以及应用为了满足更多的需求。一些简单好用的库也层出不穷。从今天开始要介绍 Android 开发的不可缺少的库。库中的四大天王,当属是 RxAndroid Retrofit Dagger OKHttp
新四大天王起初对于我, RXAndroid 感觉有些神秘。RXAndroid 在 Android 开发上地位可以说的上必备。之前在公众号上尝试几次来分享他,由于当时对他了解不多,可以说过于浅显,所以没有看得出他的power。不过随着开发 Android 的开发,对他有些了解,也见识到他的威力。无论是工作还是学习我们回头看昨天,可能回觉得可笑,不是一切不能从来,即使从头来过,我想我们做的那些蠢事依然可笑。
先向RxAndroid 作者这位 Android 届 JakeWharton 大神致敬一下。
JakeWhartonRxAndroid 设计让我体会到既简洁又强大。其实他的核心又两个(Reactive Stream) 就是响应和流。如果你理解这两个概念,已经抛弃传统思想,向 model web 走进一步,这个概念太重要了。希望大家找些资料理解,消化,升华一下。
图1我们还是要理解几个单词,只有理解好这几个单词和他们之间的联系您才能真正理解 RxAndroid 的含义。他们分别是 publisher subscribe subscriber subscription。由于自己理解能力有限,如果解释不好,还希望海涵。
publisher 发行商?其实差不多,用于发布事件,消息,消息大家也可以理解发行消息,刊物
这个接口,用于产生(发布)事件,事件可以同步,也可以是异步的。他事件的源头.
图2光有发行,没人看,没人订阅也有点尴尬,不过也不是不可以。那么 subscriber(用户) 和 subscribe(订阅)这些刊物了,订阅后,我们就有订阅凭证(subscription) 这个东西用来干啥,可以用于取消订阅或继续订阅这个刊物。
图3我使用消息时,会有几个具柄,第一个 onNext 这是就是我们获取数据,这个方法里我们可以处理发送过来的数据,onError 如果发生错误时,我们应该如何应对,onComplete 表示不再回发生新的数据,停刊了。
图5
网友评论