1

rxjava 1 を rxjava 2 にアップグレードしています。rxjava 1 には OnErrorThrowable がありますが、rxjava 2 にはありません。OnErrorThrowable を置き換えるには、次のコードで何ができますか?

static Observable<String> sampleObservable() {
    return Observable.defer(new Callable<ObservableSource<String>>() {
        @Override
        public ObservableSource<String> call() throws Exception {
            try {
                // Do some long running operation
                Thread.sleep(TimeUnit.SECONDS.toMillis(5));
            } catch (InterruptedException e) {
                throw OnErrorThrowable.from(e);
            }
            Log.d(TAG, "The sleep is over, now produce something");
            return Observable.just("one", "two", "three", "four", "five");
        }
    });
}
4

2 に答える 2

2

Observable.error(e);catch ブロックをスローする代わりに戻ることができます。

于 2017-01-12T09:19:58.097 に答える