RxAndroid 如何(是否可能)将一些参数放入 Observable

RxAndroid how to(is it possible) put some parameters into Observable

我的麻烦是我需要将一些参数(例如 String)放入 Observable 中以便使用它,我该怎么做,这可能吗?非常简单的示例是我们如何将参数发送到 AsyncTask:

Boolean[] myTaskParams = { true, true, true };
myAsyncTask = new myAsyncTask ().execute(myTaskParams);

将您的参数发送到正常功能和 return 您的 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);

编写异步任务时,要么捕获参数:

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; })
...