DoOnSubscribe Rx Java вызывается после Emit не раньше - PullRequest
0 голосов
/ 25 февраля 2020

У меня есть цепочка Rx Java, которая выглядит следующим образом:

Completable.complete()
    .andThen(fetchData())
    .andThen(fetchAnotherData())
    .andThen(...)
    .doOnSubscribe {
        /* some action */
    }

Проблема в том, что код в обратном вызове doOnSubscribe вызывается после last andThen (). Но я хочу, чтобы он вызывался до получения каких-либо данных. Как мне этого добиться?

1 Ответ

1 голос
/ 25 февраля 2020

Попробуйте defer подписка fetchData() Завершено

   Completable.complete()
            .andThen(Completable.defer { fetchData() })
            .andThen(Completable.defer { fetchAnotherData() })
            .doOnSubscribe { /* some action */ }
...