android源码分析
文章平均质量分 92
分析一些与android相关的框架源码。
showCar
共分享,共学习。
展开
-
Android的消息处理机制,AsyncTask源码解析
之前写过一篇Handler的源码解析文章,因为AsyncTask底层也是Handler实现的,所以不了解的可以先去了解下Handler。本文也会再次分析下Handler,毕竟它是android源码中随处可见的东东。一、Handler的简要分析讲Handler之前我们先讲一下ThreadLocal的概念。简单的说,ThreadLocal是介于局部变量和全局变量之间,可以在不同线程中互不干扰地原创 2015-11-28 15:19:25 · 734 阅读 · 0 评论 -
Activity启动过程源码分析
其实写分析源码文章总会显得很复杂很乏味,但是梳理自己看源码时的一些总结也是一种提高。这篇博客分析下Activity启动过程源码,我会尽量说得简单点。个人的观点是看源码不能看得太细,否则就会花费很多时间并很难理清整个过程。所以本次分析重在理清activity的一个启动流程。首先大概总结下activity启动的整个流程,这个过程涉及到Instrumentation,ActivityThread,和原创 2016-01-10 10:43:21 · 3305 阅读 · 2 评论 -
Volley源码解析
很早之前就想写下关于Volley的源码解析。一开始学android网络访问都是使用HttpClient,刚接触么Volley的时候就瞬间爱不释手,虽说现在项目中使用OkHttp多些(Volley更新慢),但是作为google自家推出的网络框架,Volley还是有很多值得学习的地方。这篇博客是我对Volley源码分析后的一个总结。Volley的使用Volley的使用非常简单,相信大家都很熟悉。首先需要原创 2016-02-20 09:29:00 · 1931 阅读 · 1 评论 -
LayoutInflater源码解析
又来一篇源码分析文章。讲源码分析文章有的时候很虚,因为我只能讲个我看懂的大概流程,所以细节部分可以没有深入研究,看完之后也只能了解个大概。但个人觉得看源码更重要的是思路而不是细节。今天来分析下LayoutInflater的源码。 之所以分析它是因为我们来常经常使用到它,但往往只知道它是加载view的而不知它具体的实现方法。不多说直接分析。源码分析平常我们使用LayoutInflater最常见的方原创 2016-02-21 11:42:24 · 3142 阅读 · 0 评论 -
Android中Window添加View的底层原理
一,WIndow和windowManagerWindow是一个抽象类,它的具体实现是PhoneWindow,创建一个window很简单,只需要创建一个windowManager即可,window具体实现在windowManagerService中,windowManager和windowManagerService的交互是一个IPC的过程。下面是用windowManager的例子原创 2016-03-03 09:41:59 · 5576 阅读 · 1 评论 -
android View绘制源码分析
在开发过程中我们经常要进行view的自定义。如果熟练掌握自定义技巧的话就能做出很多控件出来。这篇博客来讲讲view绘制背后发生的那些事。view的基础知识view的绘制概括首先先说说view绘制的整体过程。 View绘制的源码分析 ,它的三大流程都是在ViewRootImpl中完成的,从ViewRootImpl中的performTraversals开始,有三个方法performMeasure,pe原创 2016-03-01 15:36:03 · 1280 阅读 · 0 评论 -
ButterKnife源码分析
使用Butter Knife己经很长时间了,一直很喜欢用。因为它能帮我节省很多重复性的绑定控件代码。今天就来讲讲它的源码吧。只是总结我对它源码的一个理解。先看下它的使用效果:public TestActivity extends Activity{ @Bind(R.id.top_pic) ImageView topPic; @Bind(R.id.top) TextView原创 2016-04-27 11:23:06 · 2892 阅读 · 0 评论 -
EventBus源码分析
最近在学习Rxjava,它的思想让我回想起了之前项目中用到的EventBus,事件订阅。但EventBus的具体原理己经记不清,就跑回去看了下它的源码。今天总结下。它的使用方法很简单,不知道如何使用的可以看看我之前写过的一篇博客[不可不知的EventBus]。(http://blog.csdn.net/u014486880/article/details/48449907)使用差别在这里还是要说一下原创 2016-04-29 10:37:12 · 4744 阅读 · 0 评论 -
RxJava源码分析
最近因为实习的原因,又好长一段时间没写博客了。今天来个较简短的博客来强势回归哈哈。上篇博客写了RN的源码分析,出乎意料的就有两个出版社联系我要不要出书,可见RN的火热。本来也想写RN的,但因为最近实习接触了挺多Android的东东,还是想先总结总结先。RN就放后面啦。什么是RxJava接触RxJava也一段时间了,一直想写下关于它的文章,RxJava是用来实现异步框架的,类似于AsyncTask。这原创 2016-07-15 20:36:44 · 5026 阅读 · 0 评论 -
React Native之底层源码分析篇
学习React-Native有一段时间了。今天就从源码的角度来分析下React-Native底层的通信机制。了解下底层是如何通信的对开发也有所好处。概要先大概讲一下React-Native的通信过程。RN主要的通信在于java与js之间,平常我们写的jsx代码最终会调用到原生的View。上一篇博客我们也了解到了要新建一个原生模块需要在java层和js层分别写一个Module,那这彼此之间联系是如何实原创 2016-05-30 08:55:07 · 19902 阅读 · 4 评论