
Android源代码分析
文章平均质量分 95
geekerhw
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Part2:Volley请求失败的重试机制
Volley资源加载失败时的重试机制非常简单,放在Part2是因为不搞懂可能会影响后面的逻辑,所以简单看看代码,对着注释理解了即可 强调,看这一系列文章时手头一定要有完整的Volley源代码,可以对着理解,因为我写上的只是一部分RetryPolicy是一个接口,DefaultRetryPolicy是他的唯一实现类,重试机制启动的入口在BasicNetwork类中(进行网络操作的类),它会判断各种原创 2016-07-22 16:35:46 · 1688 阅读 · 0 评论 -
Part0:Volley源代码分析概述
简介Volley是什么Volley的特点我们会怎么做Volley总体架构总体设计图类关系图核心功能流程图简介Volley是什么?Volley是Google官方推出的一款网络请求和图片加载框架,于Google I/O 2013大会发布. 从上图中可以看出,Volley非常适合那些通信频繁,但每次通信数据量不大的场景,这正是大多数Android通信场景的写照.Volley的特点可扩展原创 2016-07-17 17:11:48 · 594 阅读 · 0 评论 -
Part3:Volley传递者原理分析
问题产生创建传递者传递的过程一个比较重要的细节问题产生我们先看一下Volley的使用方法://第一步,创建一个RequestQueue队列RequestQueue mQueue = Volley.newRequestQueue(context); //第二步,创建一个具体类型的对象,这里是StringRequestStringRequest stringRequest = new原创 2016-07-23 01:27:44 · 626 阅读 · 0 评论 -
Part1:Volley磁盘缓存
CacheDispatcherCacheEntry和DiskBasedCacheCacheHeaderDiskBasedCacheCountingInputStream缓存的核心DiskBasedCache初始化逻辑initialize函数pruneIfNeededget和putelse思考LRU算法一定合理吗如何增大缓存的命中率文件名重复问题首先研究一下Volley的磁盘缓存原创 2016-07-21 13:58:02 · 4266 阅读 · 4 评论 -
EventBus源代码深度剖析
分析之前的思考registerthis时我们都干了什么 本分析基于的代码可以在这里clone到,强烈建议边看代码边浏览本文,本文章主要分析eventbus的核心思想,因为版本差异,有一些细节可能不太一样,但我建议各位不要陷入细节无法自拔,站在较高角度去吃透它的思想才是我们的目的,因此,一些基本概念已经有很多文章已经讲过,下文不再赘述分析之前的思考eventbus的原创 2016-08-03 08:57:02 · 1971 阅读 · 0 评论 -
ListView缓存原理剖析
单类型View缓存机制多类型View缓存机制缓存原理剖析总结ListView缓存机制可以优化的地方单类型View缓存机制请看上图,字母前面的数字表示元素在屏幕上的position,字母代表着View的类型,例如1A就表示第一个位置并且类型为A的View当从状态一转变为状态2后,1A被滑出,5A被滑入,由于5A在被滑入之前缓存池中没有元素,所以5A将被创建,并且当1A滑出屏幕时将被投入到缓原创 2016-08-11 10:12:42 · 3119 阅读 · 5 评论 -
史上最全面,清晰的SharedPreferences解析
基础用法获取Sp:getput监听器原理分析获取SharedPreferences构造SharedPreferencesgetX原理分析putX原理分析创建editorputStringapplyapply总结commitSharedPreferences最佳实践勿存储过大value勿存储复杂数据不要乱edit和apply,尽量批量修改一次提交...原创 2018-03-27 14:52:00 · 7465 阅读 · 7 评论