您的位置:首页 > 其它

学习计划

2015-09-05 09:55 288 查看
最近换了新工作,去了一家创业公司,压力有点大,一个是因为周围的人背景都很资深,都很牛逼,二个是因为创业公司风险太大,再加上现在it的冬天快来了,随时都要做好换工作的准备。

工作三年,虽然能解决问题,但是感觉只是没有形成体系,希望用一年时间,通过写blog的形式,能将知识串起来,形成自己体系。

android framework太过浩瀚,漫无目的的看代码,收效甚微。我认为,学习android源代码,应该是由线到面的过程,比如学习AMS,应该分解为几条线:broadcast如何发送,activity如何启动,ams如何与WMS交互,事件如何传递给activity。理解的线多了,就能形成面,形成的面多了,自然而然能形成自己的知识体系了。

我将基于android M研究,下面是我的学习计划。

一、.android基础

1、 强化java,C++;

2、binder机制的实现原理,java层,C++层;

3、四大组件的实现原理;

4、资源的加载过程,layout的解析过程;

5、HAL层相关知识;

二、Android UI显示

1、窗口是如何显示出来的;

2、输入事件是如何传递到窗口的;

3、控件系统在WMS中是如何起作用的;

4、窗口动画是如何实现的;

5、multi window的实现;

6、surfaceflinger是怎么画的;

7、android壁纸与屏保。

三、PackageManagerService

1、第一次开机与平常开机时,PMS是如何扫描apk的;

2、AdroidManifest是如何解析的;

3、权限管理是如何实现的;

4、apk的安装与卸载过程;

5、odex的优化过程;

四、ActivityMangerService

1、activity如何启动;

2、AMS与WMS的交互;

3、activity的事件传递;

4、Activity中对broadcast的处理;

五、PowerManagerService

六、学习apk
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: