目前已经有不少Android客户端在使用Retrofit+RxJava实现网络请求了,相比于xUtils,Volley等网络访问框架,其具有网络访问效率高(基于OkHttp)、内存占用少、代码量小以及数据传输安全性高等特点。Retrofit源码更是经典的设计模式教程,笔者已在之前的文章中分享过自己的一些体会,有兴趣的话可点击以下链接了解:《Retrofit源码设计模式解析(上)》、《Retrofi
转载 2024-10-09 02:01:06
27阅读
一、Rx介绍1. 可以把Observable当做Iterable的推送方式的等价物。2. Observable类型给GOF的观察者模式添加了两种缺少的语义,这样就和Iterable类型中可用的操作一致了:生产者可以发信号给消费者,通知它没有更多数据可用了(对于Iterable,一个for循环正常完成表示没有数据了;对于Observable,就是调用观察者的onCompleted方法)生产者可以发信
转载 2024-10-29 19:59:48
47阅读
# Android RxJava 网络请求 ## 介绍 在现代的移动应用开发中,网络请求是非常常见的功能。为了提高用户体验和代码质量,我们需要使用异步编程来处理网络请求RxJava 是一个非常流行的异步编程库,它提供了一个响应式编程的模型,可以简化异步编程的复杂性。 本文将介绍如何使用 RxJava 进行网络请求,包括基本概念、使用方法和示例代码。 ## RxJava 简介 RxJav
原创 2023-09-27 14:42:41
43阅读
8种机械键盘轴体对比本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选?OkHttp框架中几个比较重要的对象: OkHttpClient,Request,Call,Response。1.1. Example// step1: 创建OkHttpClient OkHttpClient client = new OkHttpClient.Builder() .connectTimeout(2, Ti
Java的基本网络支持InetAddress类InetAddress类本身并没有提供太多功能,他代表一个IP地址对象,是网络通信的基础 代表标准的IP地址,它不带端口。提供了一些方法来测试关于特定IP地址的属性。它又包含了Inet4Address和Inet6Address。 如果想获取关于该IP地址的一些相关属性,即可通过该类提供的方法进行判断。 InetSocketAddress: 它代表了
转载 6月前
15阅读
# Rxjava map Android 网络请求Android开发中,我们经常需要进行网络请求来获取数据并展示在界面上。而使用RxJava来处理网络请求可以让代码更加简洁、易读和易维护。在本文中,我们将介绍如何使用RxJava中的`map`操作符来处理Android网络请求,并通过代码示例详细说明其用法和优势。 ## 什么是RxJava map操作符? 在RxJava中,`map`操作
原创 2024-04-22 05:25:55
121阅读
上一篇中讲解了使用框架,对于不同格式的数据返回,我们可以选择不同的Listener,最后也总结出了NetStringListener是万能的。 其实一些时候,服务端返回的数据不一定是单个Bean或者List<Bean>格式的。 现在我们来看看下面这种情况 { "code":"00001", "message":"login
转载 8月前
7阅读
本文首先解释一下handler是用来干嘛的,然后通过例子介绍其在多线程中的应用。       本文首先解释一下handler是用来干嘛的,然后通过例子介绍其在多线程中的应用。什么是Handler     handler通俗一点讲就是用来在各个进程之间发送数据的处理对象。
转载 2024-09-10 23:11:14
32阅读
Retrofit 负责请求的数据和请求的结果,使用接口的方式呈现,OkHttp 负责请求的过程,RxJava 负责异步,各种线程之间的切换。
原创 2022-06-13 09:42:58
1258阅读
RxJava2-Disposable 文章目录RxJava2-DisposableDisposableCreateEmitter---onNext/onError/onCompleteDisposableHelperCreateEmitter Disposablepublic interface Disposable { /** * Dispose the resource, t
转载 2023-07-25 22:22:53
73阅读
介绍RxJava 在 GitHub 主页上的自我介绍是 “a library for composing asynchronous and event-based programs using observable sequences for the Java VM”(一个在 Java VM 上使用可观测的序列来组成异步的、基于事件的程序的库)。 其实, RxJava 的本质可以压缩为异步这一个
# RxJava 网络请求 ## 什么是RxJava RxJava是一个在Java虚拟机上使用可观察序列编写异步和基于事件的程序的库。它通过使用观察者模式和函数式编程的概念,提供了一个灵活且强大的工具集,使得处理异步操作更加容易和直观。 RxJava 的核心概念是可观察序列(Observable)和观察者(Observer)。Observable 是一系列事件的集合,可以发出事件,而观察者则
原创 2023-10-12 11:36:53
72阅读
# 如何实现Rxjava map Android 组合网络请求 ## 简介 在Android开发中,有时候我们需要在一个页面中组合多个网络请求的数据,为了提高效率和性能,我们可以使用RxJava中的map操作符来实现。本文将教你如何使用RxJava map操作符在Android中组合网络请求的数据。 ## 流程步骤 | 步骤 | 操作 | | --- | --- | | 1 | 发起第一个网
原创 2024-04-20 06:12:20
33阅读
最近自己在学RxJava ,想到了一个东西,所以就在这里写下来。首先是from()方法,他可以接收一个集合,然后将其中的子元素挨个拆出来,例如下面的代码:myObservable.just(mList).subscribe(new Action1<List<String>>() { @Override public void
转载 2023-05-24 15:45:15
95阅读
一、合并型操作符1、startWith操作符测试代码如下: 运行结果如下:总结:先发射startWith事件。2、concatWith操作符测试代码如下: 测试结果如下:总结:后发射concatWith事件。3、concat操作符测试代码如下: 运行结果如下:总结:最多能合并4个被观察者。被观察者按照顺序发射事件,先发射observable1全部事件,再发射observable2全部事件,最后发射
ReactiveX/RxJava: RxJava – Reactive Extensions for the JVM – a library for composing asynchronous and event-based programs using observable sequences for the Java VM.https://github.com/ReactiveX/RxJav
转载 2023-07-21 15:39:41
45阅读
本文想阐述一下当你开发Android应用并采用RxJava作为你的架构,尤其是有关网络请求时最常见的三种场景。我使用Retrofit来作为网络层,简单的内存缓存-HashMap来做缓存,也可以使用Room或者其他数据库实现来替代。Retrofit接口有如下的一些简单方法,它获取一个事件列表。@GET("events")Single> getEventsFeed(...);通过我的Reposi
# RxJava延时重试 在开发过程中,我们经常会遇到需要进行网络请求的情况,而网络请求可能会因为各种原因失败。为了提高应用的稳定性和用户体验,我们通常会对网络请求进行重试操作。在使用RxJava进行开发时,我们可以利用其提供的操作符来实现延时重试的功能。本文将介绍如何使用RxJava实现延时重试,并提供一个简单的示例代码。 ## RxJava延时重试原理 在RxJava中,我们可以使用`r
原创 2024-03-01 04:10:10
106阅读
简介这篇文章只是记录一下RxJava的使用,不涉及源码分析前言RxJava是做什么的?我们为什么要用Rxjava?就我现在的理解来说,一个作用是发送数据接收数据,二是异步。基本概念Observable:被观察者。事件的产生者,发送者,是主动的,整个事件的起点。Observer:观察者。事件的处理者,相应者,是被动的,整个事件的结束点。Subscriber:Subscriber是实现Observer
转载 8月前
27阅读
# Ribbon重试RxJava的结合 在现代微服务架构中,服务之间的请求常常需要依赖网络调用。由于网络的不确定性,请求可能会失败。为了提高系统的稳定性与可用性,我们可以通过重试机制来处理这些失败的请求。在Spring Cloud中,Ribbon提供了一种负载均衡的方式,而RxJava则让我们能够以响应式编程的方式来处理异步请求。 ## 什么是Ribbon? Ribbon是一个客户端负载均
原创 2024-10-14 05:14:42
12阅读
  • 1
  • 2
  • 3
  • 4
  • 5