问题标签 [rx-java3]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
rx-java - 将平面图与分组的 observables 一起使用
我是 RxJava 的新手,并试图理解它。我有以下来源:
这将打印作为评级的键,但我无法打印值。
可以使用flatMap
吗?
rx-java - flatMap 和 flatMap single 用于分组的 observables
我是 RxJava 的新手,并试图理解它。我有以下来源:
这种方法打印键和相关的值。
如果我做:
它似乎打印了与键关联的值列表。
但是具体是如何flatMapSingle
工作的呢?有什么区别flatMap
?
java - 为什么 subscribeOn 对 Rxjava 中的 PublishSubject 没有影响?
这是我在 Kotlin 中的测试代码:
我正在尝试在不同的 IO 线程中运行map
块和块。subscribe's onNext
但是输出是这样的:
如您所见,似乎调用对流subscribeOn
没有影响,PublishSubject's
并且thread-0,thread-1 and thread-2
是指调用onNext
方法的线程。
另外考虑下面的代码:
我写了上面的代码,看到没有输出输出。但是如果我subscribeOn
从流中删除,消息会按如下顺序打印:
这些代码有什么问题?谢谢。
android - 具有块体('{...}')的函数中需要一个'return'表达式
我想在 CampaignRepositoryImpl.kt 类的 getCampaigns 函数中使用 rxjava3 调用 api,但我收到以下错误A 'return' expression required in a function with a block body ('{...}')
在 CampaignRepositoryImpl.kt 类下面
在我的接口类下面我得到 API 调用
在 CampaignRepository 下方
接口 CampaignRepository {
}
在我的 CompaignResponse.kt 下面
在Campaings元数据下方
以下
在 CampaignDto 下方
我想知道我在哪里犯了错误我必须做什么以避免错误
android - Single Rx Java 在可拖动的 Reyclerview 中显示双数据
在回收视图中使用 Singles 时遇到问题,可以拖动视图。
我有一个带有不同类型的视图的recyclerview。每个查看器显示不同的内容。在我的两个视图中,通过使用 Single (Rx Java) 发出数据来显示数据。这个recyclerview也是可拖动的,这意味着viewholders可以改变他们的位置。我的问题是,当我拖动使用 Single ( Rx Java ) 的视图时,数据将显示两次,分别在视图的旧位置和新位置。
我需要的是要从查看器所在位置删除的数据,并且只显示在被拖动到的位置!
我尝试在从某个位置删除视图时处理可观察对象,然后在再次创建视图时再次创建/订阅它。
我还尝试在从某个位置删除视图时取消订阅可观察对象,然后在再次创建视图时再次订阅它。我尝试过的两件事都没有奏效。
我能做些什么来解决它?任何帮助表示赞赏。
java - 使用 RxJavaErrorHandler 进行全局错误处理
我有以下引发异常并希望在全局级别捕获该异常的方法
根据 reactx 文档http://reactivex.io/documentation/plugins.html
为此,请扩展class RxJavaErrorHandler
并覆盖此方法:
我正在使用带有 java 的 micronaut 应用程序并具有以下依赖项
并尝试了下面的代码
无法导入 RxJavaErrorHandler
在寻找解决方案时,许多示例中都使用了以下代码
但是,在 RxJavaPlugins 中找不到 getInstance().registerErrorHandler
android - RxJava PublishProcessor 默认是否关心背压?
我想了解更多关于 RxJava PublishProcessor 的信息。它是默认处理背压还是我们应该通过 onBackPressure 函数添加这个行为?
android - 如何从 LiveDataReactiveStreams 中清除数据
我正在使用 RxJava3 从 Firestore 读取数据并通过 LiveDataReactiveStreams 将其转换为 LiveData。我有食物清单,点击食物我想加载有关该特定食物的详细信息。问题是,当用户单击一个项目并加载它时,在单击第二个项目后,他会从前一个项目中获取值一秒钟,直到加载新数据。我注意到我的存储库中的流总是触发新的点击并返回以前的数据,但我想显示新项目的第一个加载状态,然后显示该加载的项目。我将如何防止它返回以前的值,或清除 LiveData?
存储库
视图模型
java - RXJava 的问题
我正在改编一些来自三词地址的示例代码,以便通过他们的 Java SDK 访问他们的 API。它使用 RXJava。
示例代码是:
首先。这会在构建时发出弃用警告并发出 IDE 警告 ( Result of 'Observable.subscribe()' is ignored
)。
为了解决第一个问题,我Disposable myDisposable =
在Observable
. 这个对吗?(添加位置见下文)
接下来我需要添加一个超时,以便在请求超时时可以显示警告等。为此,我已添加.timeout(5000, TimeUnit.MILLISECONDS)
到构建器中。
这行得通,但timeout
s 似乎对Observable
s 起作用的方式是它们抛出异常,我不知道如何捕获和处理该异常。
我现在拥有的是:
这构建并运行良好,并且未显示 API/弃用警告,但是当没有可用网络时,此正确超时并引发未处理的异常。
所以,代码似乎是正确的,但究竟如何添加异常处理来捕获TimeoutException
抛出的超时?
我已经尝试了很多东西,包括:try-catch
在整体周围添加一个子句Observable
- 这会警告TimeoutException
`try; 中的代码不会抛出该警告;并添加一个错误处理程序。
添加错误处理程序让我最接近,所以下面的代码是我所得到的:
这会正确捕获超时并更新我的 UI 而不会出错,但是当网络恢复时,似乎 Observable 可能正在尝试返回并引发空指针异常。
(更新,无论网络是否恢复,这个NPE实际上可能会在短时间内被抛出......但它总是在网络恢复时抛出。)
我得到FATAL EXCEPTION: RxCachedThreadScheduler-1
并且java.lang.NullPointerException: Callable returned a null value. Null values are generally not allowed in 3.x operators and sources.
我是否需要销毁Observable
或其他东西来防止 NPE?
android - 如何使用Retrofit前台服务异步工作Rxjava3
我想在前台服务中使用retrofit和rxjava 3提取异步json数据并将其作为通知显示给用户,但到目前为止我还没有成功。
我以这种方式查看了不同的示例,它们没有使用非常不同的结构,但我不明白为什么不进行异步调用。
感谢您的帮助