android.os.NetworkOnMainThreadException using rxjava on android

后端 未结 4 1750
臣服心动
臣服心动 2021-01-17 12:11

i\'m having trouble implementing rxJava in order to check if there is internet connection on android i\'m doing it like this:

on my launcher activity i have this in

4条回答
  •  生来不讨喜
    2021-01-17 12:53

    AdamS is correct, however RxJava 2 now offers Observable.fromCallable() to defer an observable operation till subscription. A good reference: https://caster.io/lessons/fromcallable-converting-slow-methods-into-an-observable/

    Some example code from my use-case:

    Single.fromCallable(new Callable() {
            @Override
            public Response call() throws Exception {
                return NetworkGateway.networkRequest();
            }
        })
        .subscribeOn(Schedulers.io())
        .observeOn(AndroidSchedulers.mainThread())
        .subscribe(observer);
    

提交回复
热议问题