Volley是google在2013年IO大会上发布的一个网络通信工具包,对在android平台上通过消息队列,异步处理,线程池,缓存等方式对http请求的一些常见方法进行了优化,同时对大数据量的请求并发也作了一定的处理,可以随时取消消息的请求。
Volley主要分为两个包:核心包和工具包。核心包主要对消息请求常用的方法进行了封装;工具包则提供了一些常见的消息请求如图片,json。
Volley对消息请求处理的主要流程如下:
1 创建消息请求并放入消息缓存队列,消息缓存处理器在本地缓存里检查该消息是否有缓存,如果有,则直接将消息响应返回;
2 如消息缓存里没有该消息,则将该消息放入消息请求队列;
3 消息请求处理器从队列里依次取出消息请求,
4 消息请求处理器通过网络发送请求;
5 网络对请求作出响应,消息队列处理器对网络响应进行解析处理;
6 将解析后消息响应存入缓存,同时通知发出请求的主线程对响应进行处理。