Я хотел бы позвонить getNote
в фоновом режиме.
После того, как я получу результат, который является Note
объектом и все еще в фоновом режиме, я хотел бы взять два значения Note's
- text_encrypted
и date
.
В конце концов я хотел бы вернуть их к следующему шагу и в главном потоке установить значения для двух textView.
Как я мог достичь этого?Вот мой код ниже.
Observable.fromCallable(() -> NotesDataBase.getNote(id))
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.flatMap(notes -> {
new Object[]{
GeneratorAES.decrypt(notes.text_encrypted),
CalendarUtils.showArticleTime(notes.date)
};
})
.subscribe(objects -> {
((TextView) findViewById(R.id.text2)).setText(objects[0]);
((TextView) findViewById(R.id.text1)).setText(objects[1]);
});
Я предполагаю, что я делаю что-то не так в первой flatMap, но я не уверен.