Volley 是一个可让 Android 应用更轻松、(最重要的是)更快捷地联网的 HTTP 库。您可以在 GitHub 上获取 Volley。
Volley 具有以下优势:
- 自动网络请求调度。
- 多个并发网络连接。
- 透明磁盘和具有标准 HTTP 缓存一致性的内存响应缓存。
- 支持请求优先级。
- 取消请求 API。您可以取消单个请求,也可以设置要取消的请求的时间段或范围。
- 可轻松自定义,例如自定义重试和退避时间。
- 强大的排序功能,让您可以轻松使用从网络异步提取的数据正确填充界面。
- 调试和跟踪工具。
Volley 在用于填充界面的远程过程调用 (RPC) 类型的操作方面表现出色,例如以结构化数据的形式获取搜索结果页面。它可以轻松集成任何协议,并且开箱后即支持原始字符串、图片和 JSON。Volley 提供对您所需功能的内置支持,因此您无需编写样板代码,可以专注于特定于应用的逻辑。
Volley 不适用于下载大量内容的操作或流式传输操作,因为在解析过程中,Volley 会将所有响应存储在内存中。对于下载大量内容的操作,请考虑使用 DownloadManager
等替代方法。
核心 Volley 库是在 GitHub 上开发的,其中包含主要请求调度管道以及一组位于 Volley“工具箱”中的通用实用程序。如需将 Volley 添加到您的项目,最简单的方法是将以下依赖项添加到应用的 build.gradle 文件中:
dependencies { ... implementation 'com.android.volley:volley:1.1.1' }
您还可以克隆 Volley 代码库并将其设置为一个库项目:
- Git 通过在命令行中输入以下内容来克隆代码库:
git clone https://github.com/google/volley
- 按照创建 Android 库中的说明,将下载的源代码作为 Android 库模块导入您的应用项目中。
课程
- 发送简单请求
- 了解如何使用 Volley 的默认行为发送简单请求,以及如何取消请求。
- 设置 RequestQueue
- 了解如何设置
RequestQueue
,以及如何实现单例模式以创建可在应用的生命周期内持续存在的RequestQueue
。 - 提出标准请求
- 了解如何使用 Volley 的开箱即用请求类型(原始字符串、图片和 JSON)之一发送请求。
- 实现自定义请求
- 了解如何实现自定义请求。