volley使用与解析(一)
1、什么是volley
Volley是google发布的基于Android平台上的网络通信库,能使网络通信更快,更简单,更健壮。
获取地址:git clone https://android.googlesource.com/platform/frameworks/volley 然后自行编译成可用的jar
优点:
JSON,图像等的异步下载;
网络请求的排序(scheduling)
网络请求的优先级处理
缓存
多级别取消请求
和Activity和生命周期的联动(Activity结束时同时取消所有网络请求)
2、简单使用
(创建请求队列==创建请求对象==将请求对象添加到队列)
创建一个请求队列RequestQueue mQueue = Volley.newRequestQueue(context);
然后 创建一个请求对象StringRequest stringRequest = new StringRequest
把请求对象放到请求队列里面 就可以了 StringRequest stringRequest = new StringRequest
// 当需要返回结果是String 的时候 用StringRequest 当需要是json 的时候 使用 JsonObjectRequest
当然了 要加上对应的网络请求权限
<uses-permission android:name="android.permission.INTERNET" />
3、示例
// 创建队列
RequestQueue rq = Volley.newRequestQueue(getApplicationContext());
// 创建请求对象 get
StringRequest sr = new StringRequest(mybaseUrl, new Listener<String>() {
@Override
public void onResponse(String response) {
System.out.println(response);
}
}, new ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
System.out.println(error.getMessage());
}
});
// 加入队列
rq.add(sr);
// post 请求
StringRequest srPost = new StringRequest(Method.POST, mybaseUrl,
new Listener<String>() {
@Override
public void onResponse(String response) {
// TODO Auto-generated method stub }
}, new ErrorListener() { @Override
public void onErrorResponse(VolleyError error) {
// TODO Auto-generated method stub
}
}) {
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> map = new HashMap<String, String>();
map.put("abc", "shsh");
return map;
}
}; rq.add(srPost);
// 当需要返回结果是String 的时候 用StringRequest 当需要是json 的时候 使用 JsonObjectRequest
JsonObjectRequest js = new JsonObjectRequest(mybaseUrl, null,
new Listener<JSONObject>() { @Override
public void onResponse(JSONObject response) {
// TODO Auto-generated method stub }
}, new ErrorListener() { @Override
public void onErrorResponse(VolleyError error) { }
}); }
volley使用与解析(一)的更多相关文章
- Volley 实现原理解析(转)
Volley 实现原理解析 转自:http://blog.csdn.net/fengqiaoyebo2008/article/details/42963915 1. 功能介绍 1.1. Volley ...
- Volley 源码解析
Volley 源码解析 1. 功能介绍 1.1. Volley Volley 是 Google 推出的 Android 异步网络请求框架和图片加载框架.在 Google I/O 2013 大会上发布. ...
- 【安卓网络请求开源框架Volley源码解析系列】定制自己的Request请求及Volley框架源码剖析
通过前面的学习我们已经掌握了Volley的基本用法,没看过的建议大家先去阅读我的博文[安卓网络请求开源框架Volley源码解析系列]初识Volley及其基本用法.如StringRequest用来请求一 ...
- Google官方网络框架-Volley的使用解析Json以及加载网络图片方法
Google官方网络框架-Volley的使用解析Json以及加载网络图片方法 Volley是什么? Google I/O 大会上,Google 推出 Volley的一个网络框架 Volley适合什么场 ...
- Volley源码解析(三) 有缓存机制的情况走缓存请求的源码分析
Volley源码解析(三) 有缓存机制的情况走缓存请求的源码分析 Volley之所以高效好用,一个在于请求重试策略,一个就在于请求结果缓存. 通过上一篇文章http://www.cnblogs.com ...
- # Volley源码解析(二) 没有缓存的情况下直接走网络请求源码分析#
Volley源码解析(二) 没有缓存的情况下直接走网络请求源码分析 Volley源码一共40多个类和接口.除去一些工具类的实现,核心代码只有20多个类.所以相对来说分析起来没有那么吃力.但是要想分析透 ...
- Android开发学习之路-Volley源码解析
从简单的StringRequest入手看看Volley的工作机制. 先简单说下Volley的用法: ① 获取一个RequestQueue mRequestQueue = Volley.newReque ...
- Volley之 JsonRequest 解析JSON 数据
ReqestQueue 和 JsonRequest String jsonUrl = "http://ip.taobao.com/service/getIpInfo.php?ip=63.22 ...
- Android 学习笔记之Volley开源框架解析(五)
学习内容: 1.PoolingByteArrayOutputStream 2.ByteArrayPool 3.HttpStack 4.HurlStack 5.HttpHeaderParser 前面 ...
- Android 学习笔记之Volley开源框架解析(四)
学习内容: 1.NetWorkDispatcher网络请求线程调度... 2.NetWork网络请求抽象类... 3.BasicNetWork网络请求抽象类的具体实现... 4.NetWorkResp ...
随机推荐
- CSS鼠标点击式变化图片透明度
今天分享前端代码主题:jequery控制css图片透明度 很多时候在网站图片处理上需要实现一些辅助效果,比如鼠标在图片上滑动时或点击时改变图片颜色(变灰或者其他),其实一个简单的办法就是改变图片css ...
- Delphi 停靠技术的应用
一.基础知识介绍 1.VCL组件的基础知识 在TWinControl类中有一个DockSite属性(boolean),它的作用是是否允许别的控件停靠在它的上面:在TControl类中有一个DragKi ...
- User Commands
archive Creates a hadoop archive[v.存档; n.档案文件; 档案室; ]. More information can be found at Hadoop Archi ...
- WPF学习之路初识
WPF学习之路初识 WPF 介绍 .NET Framework 4 .NET Framework 3.5 .NET Framework 3.0 Windows Presentation Found ...
- autoconf automake libtool
这是一个 autoconf / automake 的 "Hello World"gztt.ll@gmail.com 主要步骤是- 准备工程目录结构和程序- autoscan 生成 ...
- hdu 2955 Robberies 背包DP
Robberies Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total S ...
- BZOJ 4013 实验比较
Description 小D被邀请到实验室,做一个跟图片质量评价相关的主观实验.实验用到的图片集一共有\(N\)张图片,编号为\(1\)到\(N\).实验分若干轮进行,在每轮实验中,小\(D\)会被要 ...
- lc面试准备:Remove Duplicates from Sorted List II
1 题目 Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct ...
- 关于Android4.2后WebView的js方法需要加@JavascriptInterface
解读: targetSdkVersion>=17时,需要加上@JavascriptInterface,否则报错Uncaught TypeError: Object [object Object] ...
- FILTER优化
explain plan for select a.* from fxqd_list_20131115_new_100 a where (acct_no, oper_no, seqno, trans_ ...