2
我一直包裝同步庫,因此每個IO方法都會返回Observable
。然而,其中一些方法返回Observable<Void>
,因爲我只關心它的完成。遵循Observable的RxJava鏈調用<Void>
如何在不發射任何東西的Observable
之後連鎖呼叫?
accountManager.doAuth()
.flatMap(x -> paginator.next())
.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(Schedulers.io())
.subscribe(... subscriber stuff ...)
我要叫doAuth
爲每個請求並返回Observable<Void>
。由於它不排放物品,所以從不叫onNext
,只有onCompleted
。
關於doAuth
我只關心它是否完成或出現錯誤。如果它完成,我希望paginator.next()
被調用,所以我可以在onCompleted/onError/onNext
中實現我自己的邏輯。
到現在爲止,我一直在使用flatMap
來鏈接調用,並且在我真正關心之前的Observables返回的事情時它工作正常。
認爲我需要執行幾個Completable的,然後觀察到的,在最後認購,我怎樣才能做到這一點? – Shvalb
@Shvalb在'Completeable'中有'和Then()'操作符,它在'Observable'中的行爲非常像flatMap –