欢迎使用CSDN-markdown编辑器

一、Volley提供的功能
Volley特别适合数据量不大但是通信频繁的场景。
Volley应该是简化了网络通信的一些开发,特别是针对如下两种情况:
JSON对象
图片加载
简单来说,它提供了如下的便利功能:
JSON,图像等的异步下载;
网络请求的排序(scheduling)
网络请求的优先级处理
缓存
多级别取消请求
和Activity和生命周期的联动(Activity结束时同时取消所有网络请求)
二、Volley的局限性

Volley不适用大数据(large payloads ),流媒体,这些case,还需要使用原始的方法,比如Download Manager等。

从volley自身的结构来讲,他有两个队列来处理request,首先 一个本地存储队列来获取最新的请求,当本地存储队列发现有满足这个请求的数据时就返回相应数据,如果没有,则丢到另一个实现网络请求的队列中去,volley开启了4个线程来读取这个队列,保证队列中网络请求停留极短的时间。每个读取线程独自接着实现请求和数据分发

Volley:
文本:StringRequest JsonObjectRequest JsonArrayRequest
图片:ImageRequest ImageLoader NetWorkImageView

Volley使用步骤:

1.新建一个请求队列 RequestQueue
2.实例化请求队列
3.新建一个StringRequest 请求对象,并实例化
4.将请求对象添加到请求队列中

//声明请求队列
RequestQueue requestQueue;
// 实例化请求队列
requestQueue = Volley.newRequestQueue(this);// 单例模式
StringRequest
// 实例化一个StringRequest对象
StringRequest stringRequest = new StringRequest(url, //请求的网址
new Listener() { },//网络访问成功,回调的接口
new ErrorListener() {});//访问网络失败,回调的接口

// 实例化一个StringRequest对象
StringRequest stringRequest1 = new StringRequest(
Method.POST, //请求方式
url, //请求网址
new Listener() { //网络访问成功,回调的接口
@Override
public void onResponse(String arg0) {
// TODO Auto-generated method stub
} },
new ErrorListener() { //访问网络失败,回调的接口
@Override
public void onErrorResponse(VolleyError arg0) {
}
}) { //重写StringRequest中的该方法,用于设置Post请求的参数
@Override
protected Map

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值