Activity启动流程源码分析
以下是在eclipse中跟踪源码的。
我们直接在工程中关联源码,有的隐藏的类是看不到的,虽然你在文件夹中能找到这个类,例如ActivityThread.
我们直接把android的源码作为一个java工程导入到eclipse就可以了,还可以使用eclipse的快捷键。查看起来比较方便,只是不要去Build。
步骤
a:在eclipse里面创建一个java工程, 创建工程时, 把Use default location这个选项去掉.
b:然后点击Browe, 找到电脑上android 系统源码所在位置, 点击确定, 再接着把这个工程创建出来, 那么完整的android系统源码就成功的导入到eclipse里面了。
具体的代码跟踪如下:
1、startActivity方法最终调用到Instrumentation中的方法
2、
3、
4、
5、
6、
7、
8、
9、
10、
11、
12、
13、
14、
15、
16、
17、
到现在整个activity的启动流程基本OK,后面继续分析ActivityThread和ActivityManagerService(AMS)两个进程如何通过Binder通信的。