草庐IT

subject-observer

全部标签

android - 尝试在空对象引用上调用虚方法 'void android.arch.lifecycle.LiveData.observe

我收到以下错误我正在使用Android架构组件并尝试实例化View模型并从LiveData观察数据。但我被困在这里请帮我解决这个问题:Attempttoinvokevirtualmethod'voidandroid.arch.lifecycle.LiveData.observe(android.arch.lifecycle.LifecycleOwner,android.arch.lifecycle.Observer)'onanullobjectreference我的fragment是这样的:在调用getCompany()方法时我得到了NullPointExceptionErrorpub

android - Retrofit2 使用 RxJava 的 Observable 概念处理 HTTP 204(No Content response)情况

我有一个网络服务,它返回一个主题的用户列表,如果该主题没有任何用户,它只返回HTTP代码204(无内容)。这是我对该服务的retrofit2调用(在Kotlin中)@GET("/user/{topic}")fungetAllUserFor(@Path(value="topic",encoded=true)topic:String):Observable>我的执行是:fungetAllUsers(topic:String,onSuccess:Consumer>,onFail:Consumer){valapi=NetworkLayer.getUserApi()api.getAllUserF

android - 如何使 AndroidSchedulers.mainThread 与 Scala Observable 一起工作?

我的oncreate中有一个Observable,我想在我的主线程上获取结果。但是由于AndroidScheduler.mainThread只与JavaObservable一起工作,我无法编译它。这是代码valL=List(1,2,3)vala=Observable.from(L).observeOn(AndroidSchedulers.mainThread()).subscribe(i=>println(i))这里'a'是一个rx.scala.langObservable。这是我遇到的编译时错误Error:(38,70)typemismatch;found:rx.Schedulerr

android - RxJava : How resume the work of an observable if a configuration change occurs?

我与RxJava一起工作和RxAndroid.如果发生配置更改(Activity轮换、语言环境更改等),如何恢复可观察对象的工作?我不仅需要恢复observable的工作,还需要保存发出的项目,当订阅者取消订阅并在订阅后立即发出所有保存的项目。我阅读了大量文章,但没有找到问题的答案。找了几个例子,都没有解决问题:https://github.com/alapshin/rxweatherhttps://github.com/kaushikgopal/RxJava-Android-Sampleshttps://github.com/tehmou/rx-android-architectur

Android 架构组件 - ViewModel Observable & Proguard

我无法让ViewModel组件与Proguard一起工作。我已经必须添加以下内容以防止由于NoSuchMethodException导致崩溃:init()-keepclasscom....SlideshowViewModel{*;}但是,我在Activity中的观察者没有收到任何数据。这在我启用Proguard之前工作正常,所以我知道Proguard是原因,我只是不知道为什么(这里是新手Proguardian)。我需要添加什么规则才能使observables正常工作?我的ViewModel(Kotlin)中有以下内容valcurrentItem=MediatorLiveData()..

java - rxJava debounce() 运算符不适用于 Observable.range()

据我所知,rxJava的debounce()运算符用于延迟事件的发射。当我将它与搜索框一起应用时,它可以正常工作:RxTextView.textChangeEvents(editText).debounce(1000,TimeUnit.MILLISECONDS)//Onlyemitafter1sec.subscribe(newObserver(){@OverridepublicvoidonSubscribe(Disposabled){}@OverridepublicvoidonNext(TextViewTextChangeEventevent){//Getmoreinformation

android - RxJava - 如何停止(和恢复)Hot Observable(间隔)?

我有以下HotObservable:hotObservable=Observable.interval(0L,1L,TimeUnit.SECONDS).map((t)->getCurrentTimeInMillis()))但是,我找不到阻止它的好方法。我能够使用takeWhile和boolean标志(runTimer)部分解决此问题:Observable.interval(0L,1L,TimeUnit.SECONDS).takeWhile((t)->runTimer).map((t)->getCurrentTimeInMillis()))虽然有两点我不喜欢这种方法:我必须保留标志run

java - Android RxJava Observable.interval() 不会停止发射项目

我有一个静态字段privatestaticSubscriptiontimer;和两个静态方法:publicstaticvoidsetTimer(){timer=Observable.interval(2,TimeUnit.SECONDS,Schedulers.computation()).doOnNext(tick->update(tick)).observeOn(AndroidSchedulers.mainThread()).subscribe();}publicstaticvoidremoveTimer(){if(timer!=null&&!timer.isUnsubscribed

android - 如何在最后一个订阅者退订后延迟拆除共享的、无限的 Observables

我们在Android应用程序中使用多种服务。这些服务提供无限的数据Observables,通常通过组合Observables来构造其他服务。这些的buildObservables可能会很昂贵。此外,这些服务通常在多个地方使用,因此它们的Observable应该在订阅者之间共享。示例:LocationService,提供无限Observable,发出当前位置ReminderService,提供无限Observable>,在数据集中每次更改后发出所有存储提醒的列表LocationAwareReminderService,提供无限Observable>Observable.combineLa

java - 编译器错误 : com. sun.tools.javac.code.Symbol$CompletionFailure : class file for rx. 未找到 Observable

我刚刚使用最新的REALM版本制作了一个基本的Realm文件,但编译器抛出了这个错误:Anexceptionhasoccurredinthecompiler(1.8.0).PleasefileabugattheJavaDeveloperConnection(http://java.sun.com/webapps/bugreport)aftercheckingtheBugParadeforduplicates.Includeyourprogramandthefollowingdiagnosticinyourreport.Thankyou.com.sun.tools.javac.code.