Tôi muốn thực hiện Yêu cầu bằng Thư viện Volley trong Chủ đề khác.Yêu cầu Volley trong Chủ đề khác nhau
Có nghĩa là, có kết nối nằm trong Tread và quá trình dữ liệu trong UIThread. Tôi muốn làm điều này, vì tôi có rất nhiều kết nối nên rất nhiều dữ liệu để xử lý và hôm nay tôi có giao diện người dùng là khối ..
Vì vậy, tôi có thể làm gì để bắt đầu kết nối một chủ đề khác nhau, và làm OnResponse()/OnErrorResponse() trong
JsonArrayRequest getReq = new JsonArrayRequest(url,new Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response) {
Log.d("onRESPONSE Synchro -> Produit",response.toString());
PgrBarProducts.setMax(response.length());
percentDisplayProduct.setText("0/"+ PgrBarProducts.getMax());
nbMaxCallNetwork = PgrBarProducts.getMax();
try {
for (int i = 0; i < response.length(); i++) {
JSONObject explrObject = response.getJSONObject(i);
String id = Integer.toString((Integer) explrObject.get("id"));
callOneObject(id, PgrBarProducts, percentDisplayProduct , 1); // appel du product
}
} catch (JSONException e) {
e.printStackTrace(new PrintWriter(stackTrace));
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
changeStatutToError();
VolleyLog.d("", "Error: " + error.getMessage());
percentDisplayProduct.setTextColor(Color.RED);
percentDisplayProduct.setTypeface(null, Typeface.BOLD);
percentDisplayProduct.setText("erreur");
waitBarProgressProduct.setVisibility(View.INVISIBLE);
synchroProducts.setVisibility(View.VISIBLE);
}
});
getReq.setRetryPolicy(new DefaultRetryPolicy(60 * 1000, 1,DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));
// Adding request to request queue and start the request
AppController.getInstance().addToAndStartRequestQueue(getReq);
}
});
không ai có thể trả lời? :/ –