android中Volley网络请求异常之VolleyError

本文介绍了Volley网络库中的各种异常类型及其处理方法,包括身份验证失败、网络错误、解析错误等,并提供了具体的错误提示示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Volley的异常列表:
AuthFailureError:如果在做一个HTTP的身份验证,可能会发生这个错误。
NetworkError:Socket关闭,服务器宕机,DNS错误都会产生这个错误。
NoConnectionError:和NetworkError类似,这个是客户端没有网络连接。
ParseError:在使用JsonObjectRequest或JsonArrayRequest时,如果接收到的JSON是畸形,会产生异常。
SERVERERROR:服务器的响应的一个错误,最有可能的4xx或5xx HTTP状态代码。

TimeoutError:Socket超时,服务器太忙或网络延迟会产生这个异常。默认情况下,Volley的超时时间为2.5秒。如果得到这个错误可以使用RetryPolicy。

通常在baseActivity和baseFragment中封装一下这些异常。

 public void checkError(VolleyError error){

        if(error!=null){
            if(error instanceof TimeoutError){
                Toast.makeText(mActivity,"网络请求超时,请重试!",Toast.LENGTH_SHORT).show();
                 return;
            }
            if(error instanceof ServerError) {
                Toast.makeText(mActivity,"服务器异常",Toast.LENGTH_SHORT).show();
                return;
            }
            if(error instanceof NetworkError) {
                Toast.makeText(mActivity,"请检查网络",Toast.LENGTH_SHORT).show();
                return;
            }
            if(error instanceof ParseError) {
                Toast.makeText(mActivity,"数据格式错误",Toast.LENGTH_SHORT).show();
                return;  
            }
            
            Toast.makeText(mActivity,error.getMessage(),Toast.LENGTH_SHORT).show();
           
        }

    }



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值