volley okhttp universal-image-loader对比分析

转载 2015年07月07日 17:54:05
一、Volley
下载地址: https://github.com/smanikandan14/Volley-demo
特点:Volley是Android平台上的网络通信库,能使网络通信更快,更简单,更健壮。
功能点:
JSON,图像等的异步下载
网络请求的排序(scheduling)
网络请求的优先级处理
 缓存
多级别取消请求
和Activity和生命周期的联动(Activity结束时同时取消所有网络请求)
架构设计:
     Volley使用了线程池来作为基础结构,主要分为主线程,cache线程和network线程。主线程和cache线程都只有一个,而NetworkDispatcher线程可以有多个,这样能解决比并行问题
优点:volley简化了网络通信这块的开发,特别是针对数据量不大但网络通信频繁,对JSON对象,图片加载这两块进行了很好的封装和支持,

缺点:对大数据(large payloads ),流媒体,这些case不能很好的支持,还需要使用原始的方法,比如Download Manager等。

http://lzyblog.com/page/2/

http://blog.csdn.net/cym492224103/article/details/40618775

http://yanmingming.sinaapp.com/

http://blog.csdn.net/jdsjlzx/article/details/40738181

二. Okhttp square开源的http工具类
项目地址:https://github.com/square/okhttp
文档介绍:http://square.github.io/okhttp/
特点:(1) 支持SPDY(http://zh.wikipedia.org/wiki/SPDY)协议。SPDY协议是Google开发的基于传输控制协议的应用层协议,通过压缩,多路复用(一个TCP链接传送网页和图片等资源) 参考:http://zh.wikipedia.org/wiki/SPDY
(2) 如果SPDY不可用,利用连接池减少请求延迟
(3) Gzip压缩
(4) Response缓存减少不必要的请求

http://www.tuicool.com/articles/3INNz2

http://www.trinea.cn/android/android-http-api-compare/ 

http://my.oschina.net/blackylin/blog/144136

三.Universal-image-loader

http://www.cnblogs.com/osmondy/p/3266023.html

http://codekk.com/open-source-project-analysis/detail/Android/huxian99/Android%20Universal%20Image%20Loader%20%E6%BA%90%E7%A0%81%E5%88%86%E6%9E%90

四.EventBus分析

EventBus主要特点
1. 事件订阅函数不是基于注解(Annotation)的,而是基于命名约定的,在Android 4.0之前的版本中,注解解析起来比较慢 , 事件响应函数默认以“onEvent”开始,可以在EventBus中修改这个值,但是不推荐这么干
2. 事件响应有更多的线程选择
EventBus可以向不同的线程中发布事件,在ThreadMode 枚举中定义了4个线程,只需要在事件响应函数名称“onEvent”后面添加对应的线程类型名称,则还事件响应函数就会在对应的线程中执行,比如事件函数“onEventAsync”就会在另外一个异步线程中执行,ThreadMode定义的4个线程类型如下:
PostThread:事件响应函数和事件发布在同一线程中执行。这个是默认值,这样可以避免线程切换。
MainThread:事件响应函数会在Android应用的主线程(大部分情况下都是UI线程)中执行。
BackgroundThread:事件响应函数会在一个后台线程中执行。如果事件发布函数不是在主线程中,则会立即在事件发布线程中执行响应函数。如果事件发布函数在主线程中,EventBus则会在唯一的一个后台线程中按照顺序来执行所有的后台事件响应函数。

http://www.trinea.cn/android/eventbus-source-analysis/

五.Dagger 源码解析

http://codekk.com/open-source-project-analysis/detail/Android/%E6%89%94%E7%89%A9%E7%BA%BF/Dagger%20%E6%BA%90%E7%A0%81%E8%A7%A3%E6%9E%90

android-volley 图片缓存分析与比较Volley , Universal-Image-Loader 和 picasso

关于android图片缓存开源框架,被程序猿们津津乐道的应该是,Volley , Universal-Image-Loader 和 picasso。关于他们大家问的最多的问题是,到底Volley和UI...

Universal-Image-Loader,android-Volley,Picasso、Fresco和Glide五大Android开源组件加载网络图片的优缺点比较

在android中的加载网络图片是一件十分令人头疼的事情,在网上有着许多关于加载网络图片的开源库,可以让我们十分方便的加载网络图片。在这里我主要介绍一下我自己在使用Volley, Picasso, U...

Universal-Image-Loader,android-Volley,Picasso、Fresco和Glide五大Android开源组件加载网络图片的优缺点比较

在android中的加载网络图片是一件十分令人头疼的事情,在网上有着许多关于加载网络图片的开源库,可以让我们十分方便的加载网络图片。在这里我主要介绍一下我自己在使用Volley, Picasso, U...

Android Universal-Image-Loader,Volley,Picasso、Fresco和Glide五大Android开源组件加载网络图片的优缺点比较

转载地址:http://blog.csdn.net/richiezhu/article/details/46968569 在android中的加载网络图片是一件十分令人头疼的事情,在网上有着许多关于...
  • QQ55214
  • QQ55214
  • 2017年02月28日 14:37
  • 353

Universal-Image-Loader,android-Volley,Picasso、Fresco和Glide五大Android开源组件加载网络图片的优缺点比较

在android中的加载网络图片是一件十分令人头疼的事情,在网上有着许多关于加载网络图片的开源库,可以让我们十分方便的加载网络图片。在这里我主要介绍一下我自己在使用Volley, Picasso, U...

使用volley+universal image loader实现数据缓存和读取

什么是volley volley是谷歌于2013推出的一款网络访问框架。具体怎样使用可以参考csdn其他博客教程,这里不重复造轮子 volley隐藏特性 1.默认自带缓存,缓存路径在-----'...

Android 异步加载数据 AsyncTask+Handler+AsyncHttpClient+Universal_Image_loader+Volley

1.怎么使用AsyncTask+Handler传值 地址:http://www.oschina.net/code/snippet_725438_49858 [1].[代码] [Java...

Universal-Image-Loader,android-Volley,Picasso、Fresco和Glide五大Android开源组件加载网络图片比较

Universal-Image-Loader,android-Volley,Picasso、Fresco和Glide五大Android开源组件加载网络图片比较 在Android中的加载网络图片是一...
  • wwdlss
  • wwdlss
  • 2016年03月04日 11:14
  • 524

网络图片加载(Universal_Image_Loader,Volley)

当我们的ImageView是加载网络的图片是
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:volley okhttp universal-image-loader对比分析
举报原因:
原因补充:

(最多只允许输入30个字)