OkHttp使用Okio来大大简化数据的访问与存储,Okio是一个增强 java.io 和 java.nio的库 。
OkHttp和Okio都是Square团队开发的。
Volley是一个简化网络任务的库。他负责处理请求,加载,缓存,线程,同步等问题。它可以处理JSON,图片,缓存,文本源,支持一定程度的自定义。
Volley是为RPC网络操作而设计的,适用于短时操作。
Volley默认在Froyo上使用Apache Http stack作为其传输层,在Gingerbread及之后的版本上使用HttpURLConnection stack作为传输层。原因是在不同的安卓版本中这两种http stack各自存在一些问题。
Volley可以轻松设置OkHttp作为其传输层。
Volley是谷歌开发的。
SPDY(读作“SPeeDY”)是Google开发的基于TCP的应用层协议,用以最小化网络延迟,提升网络速度,优化用户的网络使用体验。SPDY并不是一种用于替代HTTP的协议,而是对HTTP协议的增强。新协议的功能包括数据流的多路复用、请求优先级以及HTTP报头压缩。谷歌表示,引入SPDY协议后,在实验室测试中页面加载速度比原先快64%。
RPC 远程过程调用
Volley:优点:高分辨率图像,a simple REST service缺点:文档不全,不支持流文件上传下载,大文件实现差
okhttp:支持SPDY,允许连接同一主机的所有请求分享一个socket,如果一个服务器有多个IP地址,当一个不可用时会自动跳转到下一个,如果SPDY不可用,会使用连接池减少请求延迟。使用GZIP压缩下载内容,且压缩操作对用户是透明的。利用响应缓存来避免重复的网络请求。
Gson 是一个JSON序列化与反序列化库,使用反射来把JSON对象转换成Java数据模型对象。你可以添加自己的序列化与反序列化来更好的控制与自定义。
Gson是谷歌开发的。