我的麻烦是我需要将一些参数(String作为示例)放入Observable中以便进行一些工作,我该怎么做,是否可能?非常简单的示例是我们如何将params发送到AsyncTask:
mvn dependency:tree -Dverbose
答案 0 :(得分:1)
编写异步任务时,请捕获参数:
Object[] params = { false, true, true};
Observable
.fromCallable(() -> { use params; return value; })
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(...);
或转换参数:
Observable.just(params)
.map(p -> { use p; return value; });
...
或为一组参数生成许多值:
Observable.just(params)
.flatMap(p -> { use p, return Observable.something; })
...
答案 1 :(得分:0)
将你的参数发送到普通函数并返回你的Obsverable类型并让它在后台运行。
public T yourFunction(A a,B b,C c){
...
return t;
}
Observable.from(yourFunction(a,b,c))
.subscribeOn(Schedulers.newThread())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(yourTObserver);