RxJava的学习与实现】的更多相关文章

关于RxJava语法的问题与理解   最近看到一个blog-RxJava 写到关于Observable数据异步加载的介绍.针对fromCallable和just操作符在使用上的问题来跟大家针对代码进行分析一下: 代码思想 /** * 数据获取 **/ String getMessage() { Log.d("RxJava", Thread.currentThread().getName()); return "getMessage"; } /** * 订阅 **/…
RxJava 要在Android中使用RxJava2, 先添加Gradle配置: compile 'io.reactivex.rxjava2:rxjava:2.0.1' compile 'io.reactivex.rxjava2:rxandroid:2.0.1' 原理 在开始学习之前,先来介绍点原理性的东西. 网上也有很多介绍RxJava原理的文章,通常这些文章都从观察者模式开始,先讲观察者,被观察者,订阅关系巴拉巴拉一大堆,说实话,当我第一次看到这些文章的时候已经被这些名词给绕晕了,用了很长的…
学习地址 很全面: http://blog.csdn.net/meegomeego/article/details/49155989 final String[] words = {"Hello", "Hi", "Aloha"}; Observable.from(words).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new S…
1. 简介 RxJava "RxJava is a Java VM implementation of Reactive Extensions: a library for composing asynchronous and event-based programs by using observable sequences",用过之后可以将其特质归纳为异步与简洁. RxAndroid "This module adds the minimum classes to RxJ…
在响应式编程中,应该牢记以下两点: everything is a stream(一切皆流) don't break the chain(不要打断链式结构) 记住,可观测序列就像一条河,它们是流动的.你可以"过滤"一条河,你可以"转换"一条河,你可以将两条河合并成一条,然后它依旧是流动的.最后,它将成为你想要的那条河. "Be Water,my friend"  --Bruce Lee(李小龙) -------------------------…
1. 简介 RxJava "RxJava is a Java VM implementation of Reactive Extensions: a library for composing asynchronous and event-based programs by using observable sequences",用过之后可以将其特质归纳为异步与简洁. RxAndroid "This module adds the minimum classes to RxJ…
前言 在我上一篇讲Retrofit+RxJava在MVP模式中优雅地处理异常(一)中,发现非常多网友发邮箱给我表示期待我的下一篇文章,正好趁着清明假期.我就写写平时我在使用RxJava+Retrofit怎么去灵活地处理一些场景.比方说一些比較常见的场景: 网络请求过程中token的处理 网络请求数据的加密与解密 为每一个请求加入固定的头部.比方说当前版本,Rsa的密钥等等 规范化每一个网络请求,让代码仅仅写一次 我自己平时对代码的简洁性要求非常高,所以retrofit+rxjava正好切中了我的…
自从06年开始,Rxandroid公司项目中陆续就开始使用它了,而它的基础是由Rxjava演变过来的,如今它也是越来越被广泛使用在商业项目中了,而做为"专业"的自己还是一直对它一知半解,而在实现功能时首先并不会想到用它去架构代码,而是还是想用着传统的方式,并不是不想用它,而是对它的使用不太了解有点抗拒,所以接下来准备系统的学下它,以便在未来如果项目中用了Rx相关的东东不至于太陌生,同时也为了自己将来在做项目时能很好的应用它. 在学习一门新技术之前首先得对它有一个大概的认识,也就是理论这…
响应式编程 命令式编程(Imperative Programing),是一种描述计算机所需做出的行为的编程范式.详细的命令机器怎么(How)去处理以达到想要的结果(What). 声明式编程(Declarative Programing),是一种编程范式,与命令式编程相对立.它描述目标的性质,让计算机明白目标,而非流程.只告诉机器想要的结果(What),机器自己摸索过程(How). 响应式编程(Reactive Programing)是一种关注数据流(data streams)和变化传递(prop…
观察者模式 观察者模式是一对多的模式,多个观察者同时监听一个主题,当主题更新时,会同时通知所有的观察者 subject –>observer 学习新技术的步骤 1.官方文档的查阅和学习 2.Google搜索网上相关文章的介绍 3.结合项目进行实际应用或者自己进行示例demo编写 Rxjava的学习 1.观察者(observer) 和被观察者即主题(obserberable(subject))通过订阅(subscribe)方式来产生关联 2.使用三步曲 创建订阅者 创建观察者 订阅方法绑定…
分类 二级分类 框架名称 简介 Star 数 最近更新 UI 刷新 SmartRefreshLayout 智能下拉刷新框架 14k 18天 UI 刷新 Android-PullToRefresh 比较早的一款下拉刷新框架 8.7k 5年 UI 刷新 android-Ultra-Pull-To-Refresh 下拉刷新框架 9.3k 2年 UI 刷新 BeautifulRefreshLayout 众多优秀的下拉刷新汇总 2.1k 2年 UI 图表 MPAndroidChart 统计图表库 24k…
前言 随着Spring Boot2.0正式发布,Spring WebFlux正式来到了Spring Boot大家族里面.由于Spring WebFlux可以通过更少的线程去实现更高的并发和使用更少的硬件资源去实现扩展,我对此很感兴趣.同时Angular6也发布了,也想试试自己Angular的功底,便基于Angular和Spring WebFlux做个一个简单礼品管理系统的demo.至于angular和spring boot的集成可以参考该博客Angular和Spring Boot一起做个项目 响…
Android Weekly Issue #247 March 5th, 2017 Android Weekly Issue #247. 本期内容包括: 离线模式的实现; RxJava2的测试支持; MVI模式中的单向数据流; FlexboxLayout的使用; 用脚本来配置项目的版本名和版本号; Fragment的转场动画; MVP模式的几点原则; RxJava中需要注意的一些点; RxJava在Android中的实现例子; JUnit 5使用. ARTICLES & TUTORIALS Of…
掘金 Android 文章精选合集 掘金官方 关注 2017.07.10 16:42* 字数 175276 阅读 50053评论 13喜欢 669 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金Cover 有什么料? 从这篇文章中你能获得这些料: 知道setContentView()之后发生了什么? ... Android 获取 View 宽高的常用正确方式,避免为零 - 掘金相信有很多朋友都有过在 Activity 中通过 getWidth() 之类的方法获取 Vi…
最近Android6.0的权限问题,要把之前的APP进行改造,用到了RxPermission框架!之前了解过RXJAVA,但是由于之前项目一直没有使用这个框架,所以也就一直搁置了.正好Rxpermission框架里用到了RXJAVA的内容,索性就学习了一下. 在正文开始之前的最后,放上 GitHub 链接和引入依赖的 gradle 代码: Github: https://github.com/ReactiveX/RxJava https://github.com/ReactiveX/RxAndr…
最近同事离职,接了个锅,里面的代码都是RxJava的味道,逼的自己不得不学习一波.看了网上的很多入门篇的博客,写的很不错.链接奉上: [Android]RxJava的使用(三)转换--map.flatMap 给android开发者的RxJava详解 在RxJava的世界中,我先认识了3个主要的类: Observable Obsever Subscriber 其中,Observable扮演着类似"生产者"的角色,它是信息的产生源.Obsever和Subscriber的功能类似,扮演者类似…
Retrofit2.0通俗易懂的学习姿势,Retrofit2.0 + OkHttp3 + Gson + RxJava Retrofit,因为其简单与出色的性能,也是受到很多人的青睐,但是他和以往的通信框架还是有点区别,不过放心,因为他本身还是挺简单的,所有我相信你看完这篇文章,对基本的请求是没什么问题的,其实现在网上这样的文章也有很多了,好了,那我们直接开车吧! 一.相关资料 Github:https://github.com/square/retrofit 官网文档:http://square…
最近在做的一个项目,所用到的技术和rxjava有关,因此还特地的学习了下,在这简单的介绍下rxjava: RxJava是什么 RxJava 在 GitHub 主页上的自我介绍是 "a library for composing asynchronous and event-based programs using observable sequences for the Java VM"(一个在 Java VM 上使用可观测的序列来组成异步的.基于事件的程序的库).这就是 RxJava…
前言 上一篇文章介绍了RxJava的基础知识和简单实现,篇幅已经比较多了,所以把操作符(Operators)相关的内容放在这一篇.有了上一篇文章的基础,相信会比较容易理解操作符相关的内容了. 操作符(Operators) 拿上一篇文章中的例子HelloWorld为例 12345678 Observable.just("HelloWorld").subscribe(new Action1<String>() { public void (String s) { Log.d(L…
公司的大佬用的是这一套,那我这个菜鸟肯定要学习使用了. 我在网上找了很多文章,写的都很详细,比如 https://www.jianshu.com/u/5fd2523645da https://www.jianshu.com/p/193d8c37c73c 趁热打铁,写一篇学习笔记,理顺思路. 先把他们都引入 //rxjava compile 'io.reactivex.rxjava2:rxjava:2.2.0' compile 'io.reactivex.rxjava2:rxandroid:2.0…
第一份Android开发工作,以便于记录学习进程 Java引用 Java没有显式的使用指针,但对象的访问仍是通过指针实现的,所以直接对象之间的赋值会导致存储空间是数据的改变,如设置两个对象,其中对象一初始化,对象一赋值给对象二,在为对象二set属性后发现对象一的属性值也改变了. people p1 = new people("a","b"); people p2 = p1; p2.setparams("c"); system.out.printl…
RxJava的核心内容很简单,就是进行异步操作.类似于Handler和AsyncTask的功能,但是在代码结构上不同. RxJava使用了观察者模式和建造者模式中的链式调用(类似于C#的LINQ). 观察者模式:Observable(被观察者)被Observer(观察者)订阅(Subscribe)之后,Observable在发出消息的时候会通知对应的Observer,并且,一个Observable可以有被多个Observer订阅. 链式调用:和Builder模式类似,调用对应的方法对原对象进行处…
RxJava是什么 一个词:异步. RxJava 在 GitHub 主页上的自我介绍是 "a library for composing asynchronous and event-based programs using observable sequences for the Java VM"(一个在 Java VM 上使用可观测的序列来组成异步的.基于事件的程序的库).这就是 RxJava ,概括得非常精准. 然而,对于初学者来说,这太难看懂了.因为它是一个『总结』,而初学者更…
变换 所谓变换,就是将事件序列中的对象或整个序列进行加工处理,转换成不同的事件或事件序列. 1) API 首先看一个 map() 的例子: Observable.just("images/logo.png") // 输入类型 String .map(new Func1<String, Bitmap>() { @Override public Bitmap call(String filePath) { // 参数类型 String return getBitmapFromP…
1) Scheduler 的 API (一) 在RxJava 中,Scheduler ——调度器,相当于线程控制器,RxJava 通过它来指定每一段代码应该运行在什么样的线程.RxJava 已经内置了几个 Scheduler ,它们已经适合大多数的使用场景: Schedulers.immediate(): 直接在当前线程运行,相当于不指定线程.这是默认的 Scheduler. Schedulers.newThread(): 总是启用新线程,并在新线程执行操作. Schedulers.io():…
注意:文字和图片转载自抛物线博客 参考:http://gank.io/post/560e15be2dca930e00da1083 RxJava 到底是什么 一个词:异步. RxJava 在 GitHub 主页上的自我介绍是 "a library for composing asynchronous and event-based programs using observable sequences for the Java VM"(一个在 Java VM 上使用可观测的序列来组成异步…
课题 程序界面由3个文本编辑框和1个文本标签组成. 要求文本标签实时显示3个文本编辑框所输入的数字之和. 文本编辑框输入的不是合法数字时,将其值视为0. 3个文本编辑框的初值分别为1,2,3. 创建工程 打开 Android Studio,File / New / Project... 在 New Project 向导的第1页,Application Name 填上 RxExample,选 Include Kotlin support. 在向导的第4页点击 Finish 按钮创建工程 build…
操作符是为了解决对Observable对象的变换的问题,操作符用于在Observable和最终的Subscriber之间修改Observable发出的事件 1.filter filter()操作符是可以对Observable流程的数据进行一层过滤处理,返回一个新的Observable,filter()返回为false的值将不会发出到Subscriber,我们来看下具体的代码 Observable.just(").filter(new Func1<String, Boolean>()…
Observable(被观察者,发射器)发送数据: just:发送单个的数据: Observable.just("cui","chen","bo") .subscribe(new Consumer<String>() { @Override public void accept(String s) throws Exception { Log.i(TAG, "accept: "+s); } }); Log: 04-…
参考:给 Android 开发者的 RxJava 详解 RxJava是什么 RxJava 在 GitHub 主页上的自我介绍是 "a library for composing asynchronous and event-based programs using observable sequences for the Java VM"(一个在 Java VM 上使用可观测的序列来组成异步的.基于事件的程序的库).这就是 RxJava ,概括得非常精准. 一个词总结一下就是:异步.R…