Volley是一个使Android apps的网络操作更简单,最重要的是,更快的HTTP library。Volley可以通过开放的 repository来获取。
Volley具有如下的好处:
- 网络请求的自动scheduling。
- 多个并发的网络连接。
- 具有标准的HTTP的透明的磁盘和内存响应缓存。
- 支持请求优先级。
- 取消请求的API。你可以取消单个请求,或你可以设置阻塞的,或者取消某个范围的请求。
- 容易定制,比如retry和back off。
- 强大的排序功能,使得正确地在你的UI中填充异步地由网络获取的数据变得简单。
- 调试和跟踪的工具。
Volley擅长于RPC类型的用于填充UI的操作,比如获取一个结构化数据形式的搜索结果页。它很容易与任何协议集成,comes out of the box支持原始字符串,图片和JSON。通过提供这些你需要的功能内建的支持,Volley使你可以不用再写那些样板代码,而使你能够集中精力于你的app特有的逻辑。
由于Volley在解析期间在内存中holds住了所有的响应,Volley不适合大量的下载和流操作。对于量大的下载操作,可以考虑使用其它的东西,比如。
核心的Volley库是在开放的中开发的,在frameworks/volley,它包含了主要的请求分发管道,及在Volley “toolbox”中包含了一系列常见的可用的实用工具。把Volley添加到你的project的最简单的方式,就是clone Volley repository,并把它设置为一个library project:
- 通过在命令行中键入如下的内容来git clone repository:
git clone https://android.googlesource.com/platform/frameworks/volley
- 把下载到的源代码作为一个Android library project(如中所描述的那样,如果你使用Eclipse的话)导入到你的app project中或制作一个。
Lessons
学习如何使用Volley默认的行为发送一个简单的请求,及如何取消一个请求。
学习如何建立一个RequestQueue,及如何实现一个单例模式来创建一个在你的app的整个生命周期中一直持续的RequestQueue。
学习如何使用Volley的out-of-the-box请求类型(原始字符串,图像,和JSON)发送一个请求。
学习如何实现一个定制的请求。
译自:http://developer.android.com/training/volley/index.html
Done.