我将RxJava/Kotlin与Room和Retrofit结合使用。我确定我不是在写东西,因为我刚开始学习RxJava。场景是我打电话检查数据库中是否有收藏夹记录并将它们放入列表中,从API获取数据并将其插入数据库,使用以前的收藏夹列表更新数据库并将所有记录作为一个,现在更新,列表。我在我的fragment中得到了结果,但每次我得到它时,就好像我少了1个最喜欢的项目,直到我没有最喜欢的项目。存储库fungetKafaniFromApi():Observable>{returnapiService.getKafani().toObservable().doOnNext{insertKaf
我有以下使用Retrofit的方法服务接口(interface)从API获取一些数据,然后与view接口(interface)交互。@Override@VisibleForTestingpublicvoidfetchPhotos(@NullablePhotosServiceservice,@NullableSchedulersubscribeOn){view.showLoading();Retrofitretrofit=newRetrofit.Builder().baseUrl(Constants.PLACEHOLDER_API_BASE_URL).addConverterFactor
我在Activity中有一个EditText,用户可以在其中键入和搜索内容。在搜索栏下方,我有2个tabs附加到ViewPager。我在标签的2个Fragments中为EditText添加了一个RxJava事件更改监听器。相关代码如下:privateSubscriptionsubscription;@Nullable@OverridepublicViewonCreateView(LayoutInflaterinflater,@NullableViewGroupcontainer,@NullableBundlesavedInstanceState){Viewview=inflater.i
我想为我的Presenter类创建一个测试,但我遇到了Presenter本身内部的CompositeSubscription实例的问题。运行测试时出现此错误:java.lang.NullPointerExceptionatrx.subscriptions.CompositeSubscription.add(CompositeSubscription.java:60)atcom.example.Presenter.addSubscription(Presenter.java:67)atcom.example.Presenter.getGummyBears(Presenter.java:6
H,抱歉,我是RxJava的新手,对如何使用rx.Observable有疑问。这是我的代码finalObservabledata1=getData(...);finalObservabledata2=getData(...);finalObservabledata3=getData(...);returnObservable.zip(data1,data2,data3,newFunc3(){@OverridepublicSomeDatacall(finalSomeDatad1,finalSomeDatad2,finalSomeDatad3){//dosomethingandreturn
正如您从下面的代码中看到的,我正在尝试测试在我的存储库中发生的doOnComplete()调用的行为。但是,当我模拟客户端的注入(inject)依赖项时,我使用Observable.just()返回项目,不再调用doOnComplete()。根据RxJava2,我相信这是故意的。我不确定如何解决这个问题。@SingletonpublicclassRepository{privateSomeNetworkClientclient;privateSomeCachecache;@InjectpublicRepository(SomeNetworkClientclient,SomeCachec
我使用Retrofit和RxJava进行网络调用,使用RxBinding进行View操作。在注册屏幕中,单击“注册”按钮后,我使用MyApi服务将信息发布到本地服务器。SignupActivity.classmCompositeSubscription.add(RxView.clicks(mRegisterButton).debounce(300,TimeUnit.MILLISECONDS).subscribe(view->{registerUser();},e->{Timber.e(e,"RxView");onRegistrationFailed(e.getMessage());})
我正尝试在我的Android应用程序中对Presenter进行单元测试。我尝试测试的方法如下所示:@OverridepublicbooleanloadNextPage(){if(!mIsLoading){mIsLoading=true;if(mViewReference.get()!=null){mViewReference.get().showProgress();}mService.search(mSearchQuery,++mCurrentPage).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThre
我正在玩rxjava,发现如果订阅在Activity被销毁之前未完成,则存在内存泄漏的风险,因为“可观察对象保留对上下文的引用”。如果订阅未取消订阅onDestroyed(来源:https://github.com/dlew/android-subscription-leaks/blob/master/app/src/main/java/net/danlew/rxsubscriptions/LeakingActivity.java),下面给出了这种情况的演示之一:@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super
我正在尝试运行以下项目:https://github.com/amitshekhariitbhu/RxJava2-Android-Samples依赖项是:dependencies{compilefileTree(dir:'libs',include:['*.jar'])testCompile'junit:junit:4.12'compile'com.android.support:appcompat-v7:24.1.1'compile'io.reactivex.rxjava2:rxjava:2.0.0'compile'io.reactivex.rxjava2:rxandroid:2.0