使用Retrofit和RxJava从Android中的JSON数组逐个获取JSON对象

And*_*Dev 5 android json rx-java rx-android retrofit2

我正在使用改造来点击我的网络api,返回json数组.我这样做是使用以下代码 -

Observable<MyJson[]> response = (Observable<MyJson[]>)mNetworkService.getReadyObserverable(mNetworkService.getNetworkServiceApi().getMyDataJsons(), MyJson.class, true, useCache);
        mAirlineSubscription = response.subscribe(new Observer<MyJson[]>() {
            @Override
            public void onCompleted() {
                Log.d(TAG, "getData completed..");
            }

            @Override
            public void onError(Throwable e) {
                Log.e(TAG, "onError: "  + e.getLocalizedMessage());
            }

            @Override
            public void onNext(MyJson[] myJsonData) {
                //I want here json data one by one
            }
Run Code Online (Sandbox Code Playgroud)

但我的问题是json数据数组完全下载然后才被 onNext调用.在这里,我希望onNext在改装时从myData[]json数组中下载第一个json对象并继续执行,直到我的所有json对象都myData[]被下载.这样,我的UI在用户交互方面看起来会更具响应性和更好.

有人可以帮忙解决这个问题吗?

Mat*_*aga 1

你的服务应该是这样的:

@GET("users/{username}/repos")
Observable<List<Repository>> publicRepositories(@Path("username") String username);
Run Code Online (Sandbox Code Playgroud)

我的意思是,返回一个Observable<List<Something>>