Android 网络通信框架Volley简介
2014-04-21 00:00
811 查看
摘要: android app 开发中涉及到的网络通信框架,个人搜集和整理
网络通信的时候,大体使用的东西莫过于AsyncTaskLoader,HttpURLConnection,AsyncTask HTTPClient(Apache),Volley是Android平台上的网络通信库,Volley特别适合数据量不大但是通信频繁的apk 开发!
1 - Volley引入的原因
已下载图片为例:
网上下载图片的步骤可能是这样的流程:
7fe0
在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
4 - Volley 使用弊端
大数据(large payloads ),流媒体,这些case,还需要使用原始的方法,比如Download Manager等
网络通信的时候,大体使用的东西莫过于AsyncTaskLoader,HttpURLConnection,AsyncTask HTTPClient(Apache),Volley是Android平台上的网络通信库,Volley特别适合数据量不大但是通信频繁的apk 开发!
1 - Volley引入的原因
已下载图片为例:
网上下载图片的步骤可能是这样的流程:
7fe0
在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等
相关文章推荐
- [转]Android 网络通信框架Volley简介(Google IO 2013)
- Android 网络通信框架Volley简介(Google IO 2013)
- Android 网络通信框架Volley简介(Google IO 2013)
- Android 网络通信框架Volley简介(Google IO 2013)
- Android 网络通信框架Volley简介(Google IO 2013)
- 推荐:Android 网络通信框架Volley简介(Google IO 2013)
- Android 网络通信框架Volley简介(Google IO 2013)
- Android 网络通信框架Volley简介(Google IO 2013)
- Android 网络通信框架Volley简介(Google IO 2013)
- Android 网络通信框架Volley简介(Google IO 2013)
- Android 网络通信框架Volley简介(Google IO 2013)
- Android 网络通信框架Volley简介(Google IO 2013)
- Android 网络通信框架Volley简介(Google IO 2013)
- Android 网络通信框架Volley简介(Google IO 2013)
- Android 网络通信框架Volley简介(Google IO 2013)
- Android 网络通信框架Volley简介(Google IO 2013)
- Android 网络通信框架Volley简介(Google IO 2013)
- Android 网络通信框架Volley简介(Google IO 2013)
- Android 网络通信框架Volley简介(Google IO 2013)
- Android 网络通信框架Volley简介(Google IO 2013)