可观察的zip()始终抛出错误?

时间:2018-03-22 14:59:12

标签: android rx-java observable rx-android

我有一个填充一些数据的服务:

service.getMyPojo1Parameters(this, intent);
        .subscribeOn(Schedulers.io())
        .observeOn(AndroidSchedulers.mainThread())
        .subscribe(params -> {
            onMyPojoParametersUpdated(params.first);
        }, throwable -> {
            // showError
        });

不幸的是,params永远不会有效,它会立即跳转到showError部分?以下是getMyPojo1Parameters()方法的实现:

public Observable<Pair<MyPojo1, Boolean>> getMyPojo1Parameters(Context context, Intent aIntent) {

        Observable<Pair<MyPojo1, Boolean>> resolvePojoParamsObservable = resolvePlace(context, data1, data2);
        Observable<Pair<MyPojoExtended, Boolean>> aSide = resolvePojoParamsObservable
                .flatMap(myPojo1BooleanPair -> {
                    // stuff
                });

        resolvePojoParamsObservable = resolvePlace(context, data3, data3);
        Observable<Pair<MyPojoExtended, Boolean>> bSide = resolvePojoParamsObservable
                .flatMap(myPojo1BooleanPair -> {
                    // stuff
                });


        Observable<Pair<MyPojo1, Boolean>> zip = Observable.zip(aSide, bSide, (a, b) -> {
                    MyPojo1 myPojo1 = new MyPojo1(a.first, b.first, currentDate, currentTime);
                    boolean b = a.second || b.second;
                    return Pair.create(myPojo1, b);
                }
        );
        return zip;
}

我认为zip方法是错误的:return Pair.create(MyPojo1, b);处的断点永远不会被调用,而return zip;似乎有效且不为空。

Timber.e logcat或throwable:

  

java.lang.NullPointerException:尝试调用虚方法   &#39; java.lang.Double com.ralfi.example.models.Location.realmGet $ lat()&#39;上   空对象引用

     

03-22 16:20:31.683 29377-29377 / com.ralfi.example E / ResultMyPojoActivity:&gt; at com.ralfi.example.utils.MyRestService.lambda $ getMyPojo1Parameters $ 0 $ MyRestService(MyRestService.java:122)

     

03-22 16:20:31.683 29377-29377 / com.ralfi.example   E / ResultMyPojoActivity:at   com.ralfi.example.utils.MyRestService $$ LAMBDA $ 0.apply(未知   源:0)

0 个答案:

没有答案