Ich versuche, zwei Anfragen mit der gleichen Observer
zu beobachten. Mein Observer
:Kombinieren Anfragen mit Retrofit2 und RxJava2
private BaseObserver<LoginResponse> loginObserver = new BaseObserver<LoginResponse>(this) {
@Override
public void onSubscribe(Disposable d) {
super.onSubscribe(d);
showLoading(true);
Log.d(TAG, "onSubscribe: ");
}
@Override
public void onNext(LoginResponse response) {
super.onNext(response);
Log.d(TAG, "onNext: ");
}
@Override
public void onComplete() {
super.onComplete();
showLoading(false);
Log.d(TAG, "onComplete: ");
}
@Override
public void onError(Throwable e) {
super.onError(e);
showLoading(false);
}
};
Mein Wunsch ist eine Login-Anfrage mit Retrofit2 bauen:
private void sendRequest(String username, String password) {
IResourceAPI iResourceAPI = RetrofitClient.createIResourceClient(this);
iResourceAPI.login(new LoginRequest(username, password))
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribeWith(loginObserver);
}
Jetzt möchte ich zwei oder mehr Anfragen starten und die Antworten eins nach dem anderen in onNext
überprüfen, und wenn die letzte Anfrage wird überprüft, führen Sie onComplete
mit meiner Observer
. Könnte mir bitte jemand helfen?
Vielen Dank im Voraus.
Was wollen Sie erreichen? Kombinieren der beiden Logging-Antwort? –
Verwenden Sie etwas wie - doOnSubscribe, oder zwei Observables und kombinierenLatest? –
Ich möchte 2 oder mehr Anfragen starten und die Antworten nacheinander in onNext überprüfen, und wenn die letzte Anfrage aktiviert ist, führe onComplete aus – Buntupana