究竟什么是volley呢? 

在以前的开发过程中,开发app的时候,使用的东西可能包括:

1、Httpclient,HttpURLConnection 
2、AsyncTask,AsyncTaskLoader 
3、ImageLoader 
4、Gson

而volley呢?是Google I/O在2013上,发布出来的一套用Android平台上的网络通信库,能够使用网络通信更快,更简单,更方便,更健壮,也就是他们的结合体。

Volley提供哪些功能?

1、Gson,图像等的异步下载,不用在去考虑图片下载的时候出现listview滚动过快,造成的没有必要的数据请求。 
2、网络请求的排序 
3、缓存的处理,代替了自己动手写,或者ImageLoader 
4、多级别的取消求情 
5、Activity结束时同时取消所有网络请求

如何使用Volley?

(1)下载volley框架,导入到自己的项目中:sdk版本至少要在8以上 
(2)在项目中使用volley

1. 创建

 RequestQueue RequestQueue mQueue = Volley.newRequestQueue(context);

2. Url组建 这个是根据自己的需求组建url

3. 创建StringRequest 参数:method请求方法 Url地址 lietener监听器

StringRequest request = new StringRequest(Method.POST, urls,
    new Listener<String>() {
      public void onResponse(String response) {
        result = SecuritUtil.aesBase64Decode(response);
      }
    },
    new ErrorListener() {
      @Override
      public void onErrorResponse(VolleyError error) {       }
    }) {
  @Override
  public byte[] getBody() throws AuthFailureError {   }
);

4.添加StringRequest到RequestQueue对象中

request.setRetryPolicy(new DefaultRetryPolicy(300*1000, 1, 1.0f));
mQueue.add(request);

5.设置回调接口

public interface CallBack{
void onSuccess(Object obj);
void onFail();
void onError(Exception e);
}

(3)以上便完成了一个volley框架的使用,的确,看起来使用起来非常的简单,而且功能强大,很多东西都不用自己去考虑,就能够完成自己想要做的任何事情,对于开发者来首,实现非常的快。

总结:

volley框架,其实也就是让我们在以前使用中的一些东西如:gson,httpclient,ImageLoader等框架的结合体.

综合起来,比自己写的要好的多,也要健壮和简单的多,不过volley也是有缺点的,volley适合用户频繁的获取数据,对于大数据的处理,这样就差了很多很多。

当然也有许多好的框架开发比如:Xutils,OkHttp,Retrofit等等。

转发自:http://blog.csdn.net/u011546655/article/details/50856133

可参考:http://blog.csdn.net/Y1258429182/article/details/74783956

volley简介的更多相关文章

  1. Android 网络通信框架Volley简介

    1.1. Volley引入的背景在以前,我们可能面临如下很多麻烦的问题. 比如以前从网上下载图片的步骤可能是这样的流程: 在ListAdapter#getView()里开始图像的读取. 通过Async ...

  2. Android网络通信库Volley简介

    1. 什么是Volley 在这之前,我们在程序中需要和网络通信的时候,大体使用的东西莫过于AsyncTaskLoader,HttpURLConnection,AsyncTask,HTTPClient( ...

  3. Google 网络库Volley简介

    Volley是什么? 2013 Google I/O 大会发布的Android平台网络通讯库,旨在帮助开发者实现更快速,简单,健壮的网络通讯.支持网络图片的缓存加载功能. 适用场景:数据量不大,但是通 ...

  4. Android 网络通信框架Volley简介(Google IO 2013)

    1. 什么是Volley 在这之前,我们在程序中需要和网络通信的时候,大体使用的东西莫过于AsyncTaskLoader,HttpURLConnection,AsyncTask,HTTPClient( ...

  5. [转]Android 网络通信框架Volley简介(Google IO 2013)

    Volley主页 https://android.googlesource.com/platform/frameworks/volley http://www.youtube.com/watch?v= ...

  6. 【转】Android 网络通信框架Volley简介(Google IO 2013)

    Volley主页 https://android.googlesource.com/platform/frameworks/volley http://www.youtube.com/watch?v= ...

  7. Android网络通信库Volley简介(转)

    以前反编译过android market,发现里面有用到volley,起这么个名字不知道啥用的,现在才知道主讲者Ficus Kirkpatrick 就是负责开发Google play 的. 看完视频, ...

  8. Android网络请求通信之Volley

    一.Volley简介 Volley网络框架是Google公司在2013年发布的一款Android平台上的网络请求通信库.以下是对Volley的简单归纳. Volley的优点: 使网络通信更快.更简单. ...

  9. Android Volley完全解析(一),初识Volley的基本用法

    1. Volley简介 我们平时在开发Android应用的时候不可避免地都需要用到网络技术,而多数情况下应用程序都会使用HTTP协议来发送和接收网络数据.Android 系统中主要提供了两种方式来进行 ...

随机推荐

  1. 【Linux开发】OpenCV在ARM-linux上的移植过程遇到的问题4---共享库中嵌套库带路径【已解决】

    [Linux开发]OpenCV在ARM-linux上的移植过程遇到的问题4-共享库中嵌套库带路径[已解决] 标签:[Linux开发] 紧接着上一篇,我居然又尝试了一下编译opencv,主要是因为由于交 ...

  2. 【linux开发】ubuntu执行sudo apt-get update提示缺少公钥

    ubuntu执行sudo apt-get update提示缺少公钥 提示信息如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 获取:1 http://arch ...

  3. liteide使用中的注意点

    liteide使用中的注意点 无法跳转 会出现无法跳转的情况,可能是这个包里面的某个文件会有错误,一般把这个包里的所有的错误都改正之后就能正常跳转了.Ubuntu中,直接按f2可以跳入,之后按住alt ...

  4. linux 查看汉字编码方式

    hexdump -C b.bcp 09 为\t 0a 为\n 一个汉字占三位为utf-8  占两位的不对

  5. [转帖]IDC发布2018下半年中国公有云市场报告

    IDC发布2018下半年中国公有云市场报告:AWS以6.4%的份额名列第四 http://www.itpub.net/2019/05/06/1793/ 电信的公有云 好像是用的 华为的技术. AWS在 ...

  6. BindWeb - Bind智能DNS管理系统介绍

    2019-05-08 演示网站: https://bindw.cdneks.com demo/demo 2018-11-27 修改部署架构,取消网络共享存储设备,在每台BIND服务器启用NFS4并仅向 ...

  7. 打印页面内容,<input>不好使,用<textarea> 代替

    <textarea class="sld-textarea" onchange="changeTextareaValue(this)">123< ...

  8. HNCPC2019H 有向图

    题目 设\(f_i\)表示经过\(i\)的期望次数.那么显然答案\(ans_j=\sum\limits_{i=1}^nf_iP_{i,j}\). 我们可以轻松地列出转移式子: \[ f_1=\sum\ ...

  9. 1、Java语言概述与开发环境——编译和运行第一个程序HelloWorld.java

    编写一个Java程序到运行的步骤概述: 1.将Java代码编写到扩展名为.Java的文件中 2.通过Javac命令对该Java文件进行编译 3.通过Java命令对生成的class文件进行运行 一.编写 ...

  10. django后台集成富文本编辑器Tinymce的使用

    富文本编辑器Tinymce是使用步骤: 1.首先去python的模块包的网站下载一个django-tinymce的包 2.下载上图的安装包,然后解压,进入文件夹,执行: (pychrm直接运行命令pi ...