Google开源库:Volley的应用
2016-06-30 12:50
447 查看
Volley的基本使用介绍
Volley是什么
2013 Google I/O大会发布的Android平台网络通讯库,旨在帮助开发者实现更快捷,简单,健壮的网络通讯。支持网络图片的缓存加载功能。适用场景:数据量不大,但是通讯频率较高的场景。
官网介绍:https://android.googlesource.com/platform/frameworks/volley
官方教程:http://developer.android.com/training/volley/index.html
Volley提供的功能
1.下载JSON数据,获取图片(异步)2.网络请求的排序
3.网络请求的优先级处理
4.缓存
5.多级别的取消请求
6.与Activity生命周期联动
Volley使用过程
1.下载Volley源码- >导入- >引用库或打包成jar引用2.实现一个基本HTTP请求- Stringrequest
3.实现Post请求方式并传递参数
4.请求队列的相关操作:取消,tag设置。
Volley的两个使用方法实例
/**获取JSON数据*/ public void getJSONVolley(){ RequestQueue requestQueue= Volley.newRequestQueue(this); String JsonUrl="http://www.wwtliu.com/jsondata.html"; JsonObjectRequest jsonObjectRequest=new JsonObjectRequest(Request.Method.GET, JsonUrl, null, new Response.Listener<JSONObject>() { @Override public void onResponse(JSONObject jsonObject) { System.out.println("response:"+jsonObject); } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError volleyError) { System.out.println("Error in the program"); } }); requestQueue.add(jsonObjectRequest);//添加请求 }
/**获取图片*/ public void loadPictureVolley(){ RequestQueue requestQueue=Volley.newRequestQueue(this); String imageUrl="http://10.0.0.52/image.png";//图片地址 final LruCache<String,Bitmap> lruCache=new LruCache<String,Bitmap>(20);//缓存 ImageLoader.ImageCache imageCache=new ImageLoader.ImageCache() { @Override public Bitmap getBitmap(String s) { return lruCache.get(s);//返回图片 } @Override public void putBitmap(String s, Bitmap bitmap) { lruCache.put(s,bitmap);//加入图片缓存 } }; ImageLoader imageLoader=new ImageLoader(requestQueue,imageCache); ImageLoader.ImageListener imageListener=ImageLoader.getImageListener(iv, R.mipmap.ic_launcher,R.mipmap.ic_launcher); imageLoader.get(imageUrl,imageListener); }
切记:Volley只是用于少量数据的频繁使用,对于大量数据而言并不适用
相关文章推荐
- django windos环境下配置成功但无法创建文件
- 对Go语言的一点初步的感受和经验。
- beego任务定时执行,延迟执行
- django之常用命令详解
- 软件测试思想者(Software Testing - Thinker) - Logo一览
- golang 初识小结
- 同开三本DJANGO,需要提升一下本职工作的能力啦
- 使用zxing识别二维码时抛出com.google.zxing.NotFoundException异常问题的解决
- 如何访问google?我教你
- go语言学习之路五:Go语言内存分配机制make&new
- 证书透明度Certificate Transparency
- Golang 常用的一些基本操作
- django日志 2016.06.29回顾
- [MIT 6.824 Distributed System] Google File System
- google hunting
- mongoldb主键生成策略
- 关于一个小菜鸟集成声网SDK的磕磕碰碰
- 指定Action、Category调用系统Activty
- Category 类扩展,就是给原有类的添加方法。
- Action、Category属性与intent-filter配置