Volley是android的平台通信库,一个新的网络通信框架。Volley 的特点:适合数据量小,通信频繁的网络操作。
获取Volley
git 工具使用:
git clone https://android.googlesource.com/platform/frameworks/volley下载下来然后到eclipse后生成jar文件,放到libs下面
在已有的project中点击new->new module,然后进去选择页面在选择页面可以看到,这个更友好的界面,有Library导入,.jar、.AAR等,因为此时我们下载的是Volley.jar,所以选择 .jar
然后选择文件所在文件夹,此时作者放在桌面接下来因为没有将库引用,所以要配置bulid.gradle,此时选择File->project structure左侧选择app,然后右侧点击dependency,如图然后点击右边加号第三个Module dependency,添加刚才导入的Volley.jar一:volley请求加载图片
本地搭建一个服务器,里面放一张图片,
布局里面放一个普通的ImageView,找到图片
iv = (ImageView) findViewById(R.id.volley_image);
该方法在onCreate里面执行
private void getVolleyImage() { RequestQueue requestqueue = Volley.newRequestQueue(this); String iamgeurl = "http://10.0.2.2/images/pic_1.jpg"; final LruCachelurcache = new LruCache (20); ImageLoader.ImageCache imagecahe = new ImageLoader.ImageCache() { @Override public Bitmap getBitmap(String key) { return lurcache.get(key); } @Override public void putBitmap(String key, Bitmap value) { lurcache.put(key, value); } }; ImageLoader imageloader = new ImageLoader(requestqueue, imagecahe); ImageLoader.ImageListener listener = imageloader.getImageListener(iv, R.drawable.p1, R.drawable.p1); imageloader.get(iamgeurl, listener); }
二:使用NetworkImageView
然后在onCreate里面执行
private void getNetworkImageView() { String iamgeurl = "http://10.0.2.2/images/pic_1.jpg"; RequestQueue requestqueue = Volley.newRequestQueue(this); final LruCachelurcache = new LruCache (20); ImageLoader.ImageCache imagecahe = new ImageLoader.ImageCache() { @Override public Bitmap getBitmap(String key) { return lurcache.get(key); } @Override public void putBitmap(String key, Bitmap value) { lurcache.put(key, value); } }; ImageLoader imageloader = new ImageLoader(requestqueue, imagecahe); iv2.setTag("url"); iv2.setImageUrl(iamgeurl, imageloader); }