文档章节

Android 网络通信框架Volley简介

TuTu342121244
 TuTu342121244
发布于 2014/04/21 15:04
字数 389
阅读 299
收藏 0
点赞 0
评论 0

网络通信的时候,大体使用的东西莫过于AsyncTaskLoader,HttpURLConnection,AsyncTask HTTPClient(Apache),Volley是Android平台上的网络通信库,Volley特别适合数据量不大但是通信频繁的apk 开发!

1 - Volley引入的原因

已下载图片为例:

网上下载图片的步骤可能是这样的流程:

  • 在ListAdapter#getView()里开始图像的读取。

  • 通过AsyncTask等机制使用HttpURLConnection从服务器去的图片资源

  • 在AsyncTask#onPostExecute()里设置相应ImageView的属性。

 所以  Volley框架的优势在于,只需要一个函数即可搞定!

2 - Volley提供的功能

  • JSON,图像等的异步下载;

  • 网络请求的排序(scheduling)

  • 网络请求的优先级处理

  • 缓存

  • 多级别取消请求

  • 和Activity和生命周期的联动(Activity结束时同时取消所有网络请求)

3 - Volley  使用

首先Volley,从git库先克隆一个下来:

git clone https://android.googlesource.com/platform/frameworks/volley 

然后编译为jar包,再在自己的工程里import进来

catche 的建立 demo

package jp.classmethod.android.sample.volley;import android.graphics.Bitmap;import android.support.v4.util.LruCache;import com.android.volley.toolbox.ImageLoader.ImageCache;public  class  BitmapCache  implements  ImageCache  {        private LruCache<String, Bitmap> mCache;        public  BitmapCache ()  {        int  maxSize  =  10  *  1024  *  1024 ;        mCache = new LruCache<String, Bitmap>(maxSize) {            @Override            protected int sizeOf(String key, Bitmap value) {                return value.getRowBytes() * value.getHeight();            }        };    }    @Override    public  Bitmap  getBitmap ( String  url )  {        return mCache.get(url);    }    @Override    public  void  putBitmap ( String  url ,  Bitmap  bitmap )  {        mCache.put(url, bitmap);    }}


4 - Volley  使用弊端

大数据(large payloads ),流媒体,这些case,还需要使用原始的方法,比如Download Manager等

© 著作权归作者所有

共有 人打赏支持
TuTu342121244
粉丝 0
博文 13
码字总数 5845
作品 0
成都
Android 网络通信框架Volley简介(Google IO 2013)

什么是Volley 在这之前,我们在程序中需要和网络通信的时候,大体使用的东西莫过于AsyncTaskLoader,HttpURLConnection,AsyncTask,HTTPClient(Apache)等,今年的Google I/O 2013上,Vol...

mingxun ⋅ 2013/11/06 ⋅ 0

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

什么是Volley 在这之前,我们在程序中需要和网络通信的时候,大体使用的东西莫过于AsyncTaskLoader,HttpURLConnection,AsyncTask,HTTPClient(Apache)等,今年的Google I/O 2013上,Vol...

亭子happy ⋅ 2013/10/21 ⋅ 1

Volley 基本用法

GitHubDemo https://github.com/smanikandan14/Volley-demo#handling-error-codes Volley源码 https://github.com/mcxiaoke/android-volley Google IO2013网络框架Volley 演讲PDF http://do......

小强强强 ⋅ 2015/03/23 ⋅ 0

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

Volley主页 https://android.googlesource.com/platform/frameworks/volley http://www.youtube.com/watch?v=yhv8l9F44qo&feature=playerembedded 1. 什么是Volley 在这之前,我们在程序中需......

今日竹石 ⋅ 2015/02/28 ⋅ 0

Android网络通信库Volley简介

什么是Volley 在这之前,我们在程序中需要和网络通信的时候,大体使用的东西莫过于AsyncTaskLoader,HttpURLConnection,AsyncTask,HTTPClient(Apache)等,今年的Google I/O 2013上,Vol...

蜗牛TT ⋅ 2013/08/05 ⋅ 0

volley框架下发送和读取cookie

本文为原创,转载请注明出处,否则将依法追究版权 我们平时开发android应用都需要用到网络技术,通常采用http协议来发起请求并接受网络数据。android系统提供两种方式进行http通信:HttpURL...

刘小米 ⋅ 2014/12/29 ⋅ 11

Android Volley框架的几种post提交请求方式

首先简单描述一下Google的Android开发团队在2013年推出的一个网络通信框架Volley.它的设计目标是进行数据量不大,但通信频繁的网络操作,而对于大数据量的网络操作,比如下载文件等,Volley的...

gaolu ⋅ 2014/08/08 ⋅ 1

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

转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/17482095 1. Volley简介 我们平时在开发Android应用的时候不可避免地都需要用到网络技术,而多数情况下应用程序都会使用...

mingxun ⋅ 2014/04/18 ⋅ 0

【转】值得推荐的android开发框架简介

第一个:Afinal 项目地址:https://github.com/yangfuhai/afinal 功能:一个android的ioc,orm框架,内置了四大模块功 能:FinalAcitivity,FinalBitmap,FinalDb,FinalHttp。通过finalActivi...

kymjs张涛 ⋅ 2014/08/05 ⋅ 0

ARetrofit组建化最佳路由

Android组件化超级路由,为简单而生。 Github 源码: ARetrofit 原文 demo demo apk 下载 一 介绍 从命名来看,做Android开发的小伙伴们感觉是不是似曾相识…是的,Retrofit,一款优秀的网络框...

CharlesZhu ⋅ 06/05 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

win10怎么彻底关闭自动更新

win10自带的更新每天都很多,每一次下载都要占用大量网络,而且安装要等得时间也蛮久的。 工具/原料 Win10 方法/步骤 单击左下角开始菜单点击设置图标进入设置界面 在设置窗口中输入“服务”...

阿K1225 ⋅ 今天 ⋅ 0

Elasticsearch 6.3.0 SQL功能使用案例分享

The best elasticsearch highlevel java rest api-----bboss Elasticsearch 6.3.0 官方新推出的SQL检索插件非常不错,本文一个实际案例来介绍其使用方法。 1.代码中的sql检索 @Testpu...

bboss ⋅ 今天 ⋅ 0

informix数据库在linux中的安装以及用java/c/c++访问

一、安装前准备 安装JDK(略) 到IBM官网上下载informix软件:iif.12.10.FC9DE.linux-x86_64.tar放在某个大家都可以访问的目录比如:/mypkg,并解压到该目录下。 我也放到了百度云和天翼云上...

wangxuwei ⋅ 今天 ⋅ 0

PHP语言系统ZBLOG或许无法重现月光博客的闪耀历史[图]

最近在写博客,希望通过自己努力打造一个优秀的教育类主题博客,名动江湖,但是问题来了,现在写博客还有前途吗?面对强大的自媒体站点围剿,还有信心和可能型吗? 至于程序部分,我选择了P...

原创小博客 ⋅ 今天 ⋅ 0

IntelliJ IDEA 2018.1新特性

工欲善其事必先利其器,如果有一款IDE可以让你更高效地专注于开发以及源码阅读,为什么不试一试? 本文转载自:netty技术内幕 3月27日,jetbrains正式发布期待已久的IntelliJ IDEA 2018.1,再...

Romane ⋅ 今天 ⋅ 0

浅谈设计模式之工厂模式

工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在工厂模式中,我们在创建对象时不会对客户端暴露创建逻...

佛系程序猿灬 ⋅ 今天 ⋅ 0

Dockerfile基础命令总结

FROM 指定使用的基础base image FROM scratch # 制作base image ,不使用任何基础imageFROM centos # 使用base imageFROM ubuntu:14.04 尽量使用官方的base image,为了安全 LABEL 描述作...

ExtreU ⋅ 昨天 ⋅ 0

存储,对比私有云和公有云的不同

导读 说起公共存储,很难不与后网络公司时代的选择性外包联系起来,但尽管如此,它还是具备着简单和固有的可用性。公共存储的名字听起来也缺乏专有性,很像是把东西直接堆放在那里而不会得到...

问题终结者 ⋅ 昨天 ⋅ 0

C++难点解析之const修饰符

C++难点解析之const修饰符 c++ 相比于其他编程语言,可能是最为难掌握,概念最为复杂的。结合自己平时的C++使用经验,这里将会列举出一些常见的难点并给出相应的解释。 const修饰符 const在c...

jackie8tao ⋅ 昨天 ⋅ 0

聊聊spring cloud netflix的HystrixCommands

序 本文主要研究一下spring cloud netflix的HystrixCommands。 maven <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-clo......

go4it ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部