Visualizzare gli errori in Android Volley

Mattepuffo's logo
Visualizzare gli errori in Android Volley

Visualizzare gli errori in Android Volley

Volley è una delle più usate librerie Java per le operazioni di rete in Android.

L'unico difetto è che non è proprio immediato leggere eventuali errori.

Qui sotto un esempio di codice Java in cui andiamo a fare l'override di due metodi:

  • parseNetworkError
  • deliverError

Ovviamente per la risposta e gli errori implementate il vostro codice:

String url = "https://........";

RequestQueue queue = Volley.newRequestQueue(this);
JsonObjectRequest request = new JsonObjectRequest(Request.Method.POST, url, jsonObject,
		new Response.Listener<JSONObject>() {
			@Override
			public void onResponse(JSONObject response) {
				// DO STUFF
			}
		},
		new Response.ErrorListener() {
			@Override
			public void onErrorResponse(VolleyError error) {
				pd.dismiss();
				if (error instanceof TimeoutError) {
				} else if (error instanceof NoConnectionError) {
				} else if (error instanceof AuthFailureError) {
				} else if (error instanceof ServerError) {
				} else if (error instanceof NetworkError) {
				} else {
				}
			}
		}) {

	@Override
	protected VolleyError parseNetworkError(VolleyError volleyError) {
		String json;
		if (volleyError.networkResponse != null && volleyError.networkResponse.data != null) {
			try {
				json = new String(volleyError.networkResponse.data, HttpHeaderParser.parseCharset(volleyError.networkResponse.headers));
			} catch (UnsupportedEncodingException e) {
				return new VolleyError(e.getMessage());
			}
			return new VolleyError(json);
		}
		return volleyError;
	}

	@Override
	public void deliverError(VolleyError error) {
		super.deliverError(error);
	}
};
queue.add(request);

Enjoy!


Share this Post

Commentami!