RxJava如何在旧版本的mainThread上观察?我无法访问AndroidSchedulers.mainThread()

时间:2017-09-21 15:00:02

标签: android rx-java web3

我使用web3构建项目。

web3j.ethGetBalance("0x2910543af39aba0cd09dbb2d50200b3e800a63d2", latestBlock)
            .observable()
            .subscribeOn(rx.schedulers.Schedulers.io())
            //This needs to be on the main thread!
            //But i only have access to rx.schedulers not AndroidSchedulers.mainThread()
            .observeOn(rx.schedulers.Schedulers.io())
            .subscribe(block -> {
                ethereumTV.setText(block.getBalance() + "");
            }, error -> {
                error.printStackTrace();
            });

但是web3使用旧版本的RxJava,我无法访问mainThread来观察它(更新文本视图等)

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

compile 'io.reactivex:rxandroid:1.2.1' // <-- this is needed
compile 'io.reactivex:rxjava:1.1.6'

然后你可以得到

  'rx.Observable'中的

无法应用于'(io.reactivex.Scheduler)'

在哪种情况下

rx.android.AndroidSchedulers.mainThread()