Observable.create(new Observable.OnSubscribe<Integer>() {
@Override
public void call(Subscriber<? super Integer> subscriber) {
subscriber.onStart();
subscriber.onNext(1);
subscriber.onCompleted();
}
}).delaySubscription(5, TimeUnit.SECONDS).subscribe(new Subscriber<Integer>() {
@Override
public void onCompleted() {
Log.e("TAG", String.format("(%s) - onCompleted", System.currentTimeMillis()));
}
@Override
public void onError(Throwable e) {
Log.e("TAG", String.format("(%s) - onError", System.currentTimeMillis()), e);
}
@Override
public void onNext(Integer integer) {
Log.e("TAG", String.format("(%s) - onNext: %s", System.currentTimeMillis(), integer));
}
@Override
public void onStart() {
super.onStart();
Log.e("TAG", String.format("(%s) - onStart", System.currentTimeMillis()));
}
});
(1485004553817) - onStart
(1485004558818) - onNext: 1
(1485004558819) - onCompleted
onStart
イベントがdelaySubscription
に待っていると、すぐに呼び出していない理由は?
call
方法は
これまでに達成したソリューションは何ですか? –
ユースケースを詳しく説明できれば助かります。 onStartで何を実行したいのですが、onNextとonCompleteを使用する場合はどうしますか? –
私は 'call'メソッドで長い操作をしています。長い操作が開始されたときにプログレスバーを表示します。 –