Volley 简单使用

作者: 小生丶Jokin | 来源:发表于2017-07-18 17:12 被阅读0次
  • 首先呢肯定是导入依赖:

      compile 'eu.the4thfloor.volley:com.android.volley:2015.05.28'
    
  • 导入依赖之后呢:

      //首先得到一个RequestQueue   顾名思义也就是请求队列
      RequestQueue queue = Volley.newRequestQueue(this);
    
      //然后创建请求
      StringRequest request = new StringRequest("http://www.baidu.com", new Response.Listener<String>() {
          @Override
          public void onResponse(String response) {
              Log.d("MainActivity这就是咱们得到的值", response);
          }
      }, new Response.ErrorListener() {
          @Override
          public void onErrorResponse(VolleyError error) {
    
          }
      });
      //给请求队列添加请求
      queue.add(request);
    

    这只是一个简单的网络请求Volley成的好处就是直接把返回的数据转换成String类型的有人就问了只能转换成String? 才不是呢!接着往下看:
    ImageRequest request1 = new ImageRequest("你图片的url", new Response.Listener<Bitmap>() {
    @Override
    public void onResponse(Bitmap response) {
    imageView.setImageBitmap(response);
    }
    }, 100, 100, Bitmap.Config.ARGB_8888, new Response.ErrorListener() {
    @Override
    public void onErrorResponse(VolleyError error) {

          }
      });
      queue.add(request1);
    

有人也许就说了这么多的构造参数我哪知道什么意思!
别急我慢慢给你讲:
1.第一个是你图片的url
2.第二个是你请求成功的回调
3.第三个是图片规定最大的宽度
4.第四个是你要使用哪种位图格式来解码
5.第五个就是请求失败的回调

  • 当然你也可以自定义Request,这里就贴一个j简单的 GsonRequest的代码:
public class GsonRequest extends Request<Object> {
    private final Response.Listener<Object> mListener;
    Object ob;
    public GsonRequest(int method, String url, Response.Listener<Object> listener,
                       Response.ErrorListener errorListener,Object ob) {
        super(method, url, errorListener);
        mListener = listener;
        this.ob = ob;
    }

    public GsonRequest(String url, Response.Listener<Object> listener, Response.ErrorListener errorListener,Object ob) {
        this(Method.GET, url, listener, errorListener,ob);
    }

    @Override
    protected void deliverResponse(Object response) {
        mListener.onResponse(response);
    }

    @Override
    protected Response<Object> parseNetworkResponse(NetworkResponse response) {
        String parsed;
        try {
            parsed = new String(response.data, HttpHeaderParser.parseCharset(response.headers));
        } catch (UnsupportedEncodingException e) {
            parsed = new String(response.data);
        }
        Gson g = new Gson();
        Object obj  = (Object) g.fromJson(parsed,ob.getClass());
        return Response.success(obj, HttpHeaderParser.parseCacheHeaders(response));
    }
}

记得加上网络权限 :
<uses-permission android:name="android.permission.INTERNET" />

基本用法就这样了。sky

相关文章

  • Android:Volley的使用和Volley源码分析

    Volley网络框架 Volley的简单使用 Volley源码分析 }

  • Volley 简单使用

    首先呢肯定是导入依赖: compile 'eu.the4thfloor.volley:com.android.v...

  • Volley源码分析

    一.Volley的基本使用 1.volley简单使用 1.创建一个RequestQueue 2.创建一个Strin...

  • 如何使用Volley?

    如何使用Volley? 引用 使用之前,希望你看过之前的文档,知道Volley适合干啥?简单点说,就是小且高并发的...

  • Volley的简单使用

    对于网络请求的封装的好处,google开发者也意识到了这一点,volley是google在2013年io大会上发布...

  • Volley的简单使用

    介绍 Volley是一个Http库,能够简化Android的联网操作,但是不适合大型下载或流式传输操作,因为Vol...

  • Volley的简单使用

    总结自尚硅谷Android视频教程《Volley》https://www.bilibili.com/video/B...

  • Volley的基本使用与源码解析

    Volley的基本使用 Volley 是 Google开发的一个网络请求框架,可以让你更加简单并且快速的访问网络数...

  • Volley源码解析

    volley是现在常用的网络请求库,使用也非常简单,在google的官网上就有一张图介绍volley的请求过程, ...

  • 开源项目学习之Volley(二)

    Volley不仅可以进行普通的网络请求,还提供了一个简单的图片加载框架,下面这段代码展示了最普遍的使用Volley...

网友评论

    本文标题:Volley 简单使用

    本文链接:https://www.haomeiwen.com/subject/crehkxtx.html