新人想写一个 v2 的 android 客户端, json 解析遇到了点问题

2015-10-08 18:15:05 +08:00
 houskii
public void internetRequest(){
          JsonArray jsonArray = new JsonArray();
          RequestQueue mQueue = Volley.newRequestQueue(this);
          JsonArrayRequest jsonArrayRequest = new JsonArrayRequest("https://www.v2ex.com",
                  new Response.Listener<JSONArray>() {
                      @Override
                      public void onResponse(JSONArray response) {
                          try{
                              Log.e("json"," response "+response.length());
                              int i = myAdapter.getItemCount();
                              int j = myAdapter.getItemCount();
                              for(;i<j+12;i++){
                                  hotPost = gson.fromJson(response.getJSONObject(i).toString(), HotPost.class);
                                  arrayList.add(i,hotPost.getTitle());

                              }
                          }catch (JSONException e){
                              Log.e("json","error");
                          }

                      }
                  },
                  new Response.ErrorListener() {
                      @Override
                      public void onErrorResponse(VolleyError error) {

                      }
                  });
          mQueue.add(jsonArrayRequest);
      }

我用的 RecyclyList ,写了一个 Srcoll 的监听,当滑到底部时距离 4 个 item 时加载接下来的数据

mRecyclerView.setOnScrollListener(new RecyclerView.OnScrollListener() {
              @Override
              public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
                  super.onScrolled(recyclerView, dx, dy);
                  int lastVisbleItem = layoutManager.findLastVisibleItemPosition();
                  int totalItemCount = myAdapter.getItemCount();
                  if (lastVisbleItem >= totalItemCount - 4 && dy > 0) {
                      changeData();
                  }
                ......

听学长说一般客户端的滑动到底部加载似乎数据都是分页读取,但是 V2 的 json 数据并没有看到
页码啊……难道每次读取都要全部加载么……

而且好像每次也只能读取最新的 14 条数据……
怎样读取完整的……
www.v2ex.com

orz 求一下正确的解决方式

1740 次点击
所在节点    问与答
5 条回复
kslr
2015-10-08 18:26:17 +08:00
API 看起来只是提供了每天 /最新的数据
WildCat
2015-10-08 18:29:41 +08:00
You need jsoup
houskii
2015-10-08 18:30:00 +08:00
@kslr 所以想做客户端还是只能自己写爬虫么
houskii
2015-10-08 18:30:34 +08:00
@WildCat OK ,回头看看
Ouyangan
2015-10-08 19:28:23 +08:00
@houskii java 后端 , 下班自学安卓也是准备写个 V2 的 Android 客户端 , 不过只是负责显示 , 数据解析这些后端提供 .

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/226386

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX