035 Android Volley框架进行网络请求

1.volley入门介绍

  开发Android应用的时候不可避免地都需要用到网络技术,而多数情况下应用程序都会使用HTTP协议来发送和接收网络数据。Android系统中主要提供了两种方式来进行HTTP通信,HttpURLConnection和HttpClient,几乎在任何项目的代码中我们都能看到这两个类的身影,使用率非常高。

  Volley可是说是把AsyncHttpClient和Universal-Image-Loader的优点集于了一身,既可以像AsyncHttpClient一样非常简单地进行HTTP通信,也可以像Universal-Image-Loader一样轻松加载网络上的图片。除了简单易用之外,Volley在性能方面也进行了大幅度的调整,它的设计目标就是非常适合去进行数据量不大,但通信频繁的网络操作,而对于大数据量的网络操作,比如说下载文件等,Volley的表现就会非常糟糕。

下图所示的这些应用都是属于数据量不大,但网络通信频繁的,因此非常适合使用Volley


2.volley的使用环境配置

(1)添加volley的依赖

github地址:https://github.com/mcxiaoke/android-volley

implementation 'com.mcxiaoke.volley:library:1.0.19'

(2)声明网络权限

//网络权限,当禁用后,无法进行检索等相关业务
<uses-permission android:name="android.permission.INTERNET" />

3.StringRequest的用法

(1)获取到一个RequestQueue对象

//取得请求队列
RequestQueue requestQueue = Volley.newRequestQueue(getActivity());

  RequestQueue是一个请求队列对象,它可以缓存所有的HTTP请求,然后按照一定的算法并发地发出这些请求。RequestQueue内部的设计就是非常合适高并发的,因此我们不必为每一次HTTP请求都创建一个RequestQueue对象,这是非常浪费资源的,基本上在每一个需要和网络交互的Activity中创建一个RequestQueue对象就足够了。
(2)创建一个StringRequest对象

(3)将这个StringRequest对象添加到RequestQueue里面就可以了

//将请求添加到队列中
requestQueue.add(request);

猜你喜欢

转载自www.cnblogs.com/luckyplj/p/10932393.html