Hacer solicitud de volley en diferentes hilos

Me gustaría hacer una Solicitud usando Volley Library en diferentes Thread.

Significa que, existe la conexión que está en Tread y el proceso de datos en el UIThread. Quiero hacer esto, porque tengo una gran cantidad de conexión por lo que una gran cantidad de datos a proceso y hoy tengo la interfaz de usuario que es el bloque ..

Por lo tanto, cómo puedo hacer para poner e iniciar la conexión en un hilo diferente, y hacer el OnResponse () / OnErrorResponse () en el UIThread

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); } }); 

Cada solicitud de red realizada por Volley se realiza en un hilo de fondo. Volley se ocupa de esto detrás de las escenas. Por lo tanto, no es necesario realizar una solicitud en un hilo diferente, ya que ya está sucediendo.

Los oyentes, por otro lado, son llamados al hilo de interfaz de usuario.

Usted básicamente respondió a su propia pregunta cuando escribió que los datos se procesan en el hilo de la interfaz de usuario. Basta con mover el procesamiento de datos que se realiza dentro de sus oyentes a un hilo de fondo / AsyncTask para liberar su hilo de interfaz de usuario y evitar el bloqueo.

  • Enviando una solicitud POST con JSONArray usando Volley
  • Obtención de solicitud de contenido corporal mediante el método POST de Retrofit 2.0
  • Android usb requestWait no volver
  • Glide - agregar cabecera a la solicitud
  • Android Volley almacena peticiones cuando está fuera de línea
  • Cómo obtener el código de estado en la respuesta correcta Volley Android
  • ¿Apoya Android varias solicitudes HTTP al mismo tiempo?
  • Android httprequest java.net.UnknownHostException
  • Problema con la solicitud de Facebook en Android
  • Android - cancelar solicitud de voleibol
  • Uso de la biblioteca AQuery con la solicitud PUT y StringEntity (String)
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.