RxAndroidをよりよく理解するために、特にRetrofitと組み合わせてRxAndroidを使用した便利な例が満載のthis Repoが見つかりました。RxAndroid httpリクエストをバックグラウンドで使用してください
したがって、thisのレポを見ると、バックグラウンドで実行されているようなボタンをクリックしてhttpコールを発信できますか?
アクティビティ/フラグメントを表示する必要があると同時に、バックグラウンドでhttpコールを行い、受け取ったデータがあれば表示しますか?
だから例えば私はONSTART
@Override
public void onStart() {
super.onStart();
pomagistoService
.getAgenda()
.subscribeOn(Schedulers.newThread()) // <- run in background right?
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Observer<List<Appointment>>() {
@Override
public void onCompleted() { }
@Override
public void onError(Throwable e) { }
@Override
public void onNext(List<Appointment> appointments) {
// show data in ListView
}
});
}
でこのフラグメントを持っている私は、このフラグメントを起動した場合、リストビューは瞬時にHTTP呼び出しによって受信されたデータが含まれています。
ここで私が持っている疑問/疑問があります: このhttpコールはバックグラウンドで実行されますか?
フラグメントが出現したときにすぐに存在するデータのために私はこれを尋ねているので、実際には見ることができません。
はいhttpコールはバックグラウンドで実行されます –
@AmitShekharなので、httpコールに5秒かかるとしたら、フラグメントが表示されるのに5秒かかりません。フラグメントはちょうど現れる(データなし)? –
あなたはフラグメントリストビューをonNext()から更新する必要があります –