exception - Android volley: how to handle the error response -


i implemented android app volley library connect database. connection 'get' , 'post' request works, servers response not working. happens because error response catch automatically errors (for example server response code 201 login successful, volley untersand error).

i override parsenetworkerror class request:

 @override     protected volleyerror parsenetworkerror(volleyerror volleyerror) {         string parsed;         networkresponse networkresponse = volleyerror.networkresponse;         if(networkresponse != null && networkresponse.data != null) {             try {                 parsed = new string(networkresponse.data, httpheaderparser.parsecharset(networkresponse.headers));             } catch (unsupportedencodingexception var4) {                 parsed = new string(networkresponse.data);             }             networkresponse response = new networkresponse(networkresponse.data);             response<string> parsedresponse;             switch(response.statuscode){                 case 204:                                             ...                 case 401:                     ...                 default:                     return volleyerror;             }         }          return super.parsenetworkerror(volleyerror);     } 

the problem volleyerror. class extends exception , not contains information (code error).

how can solve this?

you can handle this

@override public void onerrorresponse(volleyerror error) {     // handle error types accordingly.for timeout & no connection error, can show 'retry' button.     // authfailure, can re login user credentials.     // in case can check how client forming api , debug accordingly.     // servererror 5xx, can retry or handle accordingly.     if( error instanceof networkerror) {     } else if( error instanceof servererror) {     } else if( error instanceof authfailureerror) {     } else if( error instanceof parseerror) {     } else if( error instanceof noconnectionerror) {     } else if( error instanceof timeouterror) {     }  } 

Comments