我的url有一个包含大量数据的json数组。 我像这样用vly jsonArrayRequest调用url
public void makeJsonArrayReq(){
showProgressDialog();
JsonArrayRequest req = new JsonArrayRequest(Const.URL_IPD_ADMITED,
new Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response) {
Log.d("response ================", response.toString());
textView.setText(response.toString());
hideProgressDialog();
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
VolleyLog.d("Error", "Error: " + error.getMessage());
textView.setText("Error Occurs ");
hideProgressDialog();
}
});
AppController.getInstance().addToRequestQueue(req, "array");
}
我的设计显示progressDialog一段时间之后它会挂出应用程序然后几分钟后它会在texview中显示响应,但是这个过程非常冗长,当互联网连接断开并从排空缓存中提取时也是如此。如何处理我的应用中的网址?
答案 0 :(得分:0)
你需要改变你的api以支持分页。有几种可用的分页技术,您必须选择一种适合您的情况。
在Android
中,您可以保存上次提取的pageNumber
(如果这是您的API返回的页面标识符),并且您的api应该在请求中接受此变量(主要通过查询参数)
http://43.255.22.123:3000/android/mis/get/ipdAdmitPatMd?pageId=1
在下一个请求中,它应该将pageId更新为2。
由于问题过于宽泛,因此无法提供精确的代码解决方案,因此我已经解释了这个概念。