Reputation: 1
As shown in the following code, I would like to use RxAndroid. but when i run the code, i dont receive any logs from
@Override
public void onNext(String s) {
Log.d(TAG, "Name: " + s);
}
please let me know hopw to fix these issue.
code:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Observer<String> animalsObserver = getAnimalsObserver();
getAnimalsObservable()
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.filter(new Func1<String, Boolean>() {
@Override
public Boolean call(String s) {
return s.toUpperCase().equals("D");
}
})
.subscribe(animalsObserver);
}
private Observable getAnimalsObservable() {
return Observable.from(Arrays.asList(
new String[] {
"Ant", "Ape",
"Bat", "Bee", "Bear", "Butterfly",
"Cat", "Crab", "Cod",
"Dog", "Dove",
"Fox", "Frog"
}
));
}
private Observer<String> getAnimalsObserver() {
return new Observer<String>() {
@Override
public void onNext(String s) {
Log.d(TAG, "Name: " + s);
}
@Override
public void onError(Throwable e) {
Log.e(TAG, "onError: " + e.getMessage());
}
@Override
public void onCompleted() {
Log.d(TAG, "All items are emitted!");
}
};
}
}
Upvotes: 0
Views: 35