安卓的异步下载(Asynchttpclient以及Volley)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安卓的异步下载(Asynchttpclient以及Volley)相关的知识,希望对你有一定的参考价值。

做了一个小案例 从网络上获取图片并加载到viewpager 刚开始使用Asynchttpclient进行数据下载 并且封装了一个类 类里面的一个方法中才是Async的使用 本想着通过封装的这个类的方法的返回值去获得Async的网络请求结果 结果怎么也取不到网络的请求结果 于是便进行调试 过程中发现网络请求确实是请求到了 但是在方法的return的时候 却返回不回去 ,于是才反应过来是线程的原因 后面又查了一下 Async的onsuccess方法是在主线程处理的 对线程只有一定的了解 并没有什么编码经验 所以就放弃了Async

进而研究Volley的使用 ,刚开始打算用for循环 加载imageRequest去取网络图片 一个一个的封装到map中 再将map封装到list中 再将list返回 结果和Async一样 确实 换汤不换药 所以又研究了一下 

最后使用imageloader 并且配合使用lrucache来将图片缓存了下来 


for(int i=0;i<urls.length;i++) {
ImageView image = new ImageView(getActivity());
image.setScaleType(ImageView.ScaleType.FIT_XY);

image.setOnClickListener(new MyClick(i));
ImageLoader imageLoader = new ImageLoader(requestQueue,bitmapCache);
ImageListener listener = ImageLoader.getImageListener(image, R.drawable.icon_default, R.drawable.image10);
imageLoader.get(urls[i], listener);
views.add(image);
}










以上是关于安卓的异步下载(Asynchttpclient以及Volley)的主要内容,如果未能解决你的问题,请参考以下文章

android AsyncHttpClient 的作用好处?

如何与Netty密切asynchttpclient异步HTTP请求

HttpClient学习—— AsyncHttpClient使用

tornado关于AsyncHTTPClient的使用笔记

AsynchttpClient下载文件,以文件流的形式

Java AsyncHttpClient:从 LazyResponseBodyPart 写入 AsynchronousFileChannel 时文件损坏