retrofit rxjava不请求

Retrofit retrofit = new Retrofit.Builder()
            .addConverterFactory(ScalarsConverterFactory.create())
            .addCallAdapterFactory(RxJavaCallAdapterFactory.create())//新的配置
            .baseUrl("https://api.github.com/")
            .build();

    AApi api = retrofit.create(AApi.class);

    api.getGit().subscribeOn(Schedulers.newThread())
            .observeOn(Schedulers.io())
            .subscribe(new Subscriber<String>() {
                @Override
                public void onCompleted() {
                    System.out.println("complete");
                }

                @Override
                public void onError(Throwable e) {
                    System.out.println("error");
                }

                @Override
                public void onNext(String s) {
                    System.out.println("next");
                }
            });
            
@GET(".")
Observable<String> getGit();

为什么就是不走网络请求呢,求老哥老姐们指教啊

阅读 1.9k
1 个回答

没有完整的么?

如果你是在 Java 的 main 方法里作的这个请求,那么这就是正常的,因为 RxJava 里的 Scheduler 里用的线程是 守护线程 所以才会有这个问题,你可以把 subscribeOn observeOn 先去了就行了,或者你可以先启动一个普通的暂时不会退出的线程。

宣传栏