导语:毕业就职已经半年多了,我在公司负责的是开机向导与SystemUI在Android8.0上做定制,从最初的小白到现在基本了解SystemUI源码结构,相关功能的实现,我走过了许多弯路,并发现在网上写SystemUI相关的架构以及如何定制SystemUI的系列文章的资料不多,所以我想将自己在这个过程中学到的知识与见解发布在简书上,让更多的新人能从我的经验中得到解决他当下问题的办法,同时也是给自己的学习进行总结。
写作思路说明
在分析SystemUI这个模块,我的学习路径是采取纵横向的方式,所以写作也是纵横向展开的,具体如下图
纵向: 纵向是采取代码执行的方式从开机后,启动SystemUI的执行,初始化相关服务后到显示相关界面,以及用户点击相关操作后,代码是如何执行的,然后通过定制相关功能的案例带读者一步一步了解SystemUI的细节。
横向:横向是采取对SystemUI模块整体进行细分,分别对下拉菜单,状态栏,导航栏三个部分的进行分解研究,了解每个小模块的整体的代码设计,从而分析谷歌对SystemUI整体的设计,学其设计思想。
小结
本文是对Android8.0源码SystemUI学习与定制相关功能系列的开篇,本系列将会分横向和纵向两个方向对SystemUI从细节到整体的进行分析研究,熟悉原生SystemUI具体实现与设计思想,并通过定制修改增加相关功能来巩固对整个模块的理解,培养提高自己根据需求设计出应用的架构、模块、类、接口以及他们之间的关系的能力,这是真正的程序员应该具备的基本素养,而不是简单的看懂,搬砖式的码农。
致读者
本系列适合从事Android系统开发的初级阶段的工程师、对系统开发有兴趣的应用开发工程师、想从事Android系统开发的应届大学生,因为本人也是才毕业半年,在学校的时候根本就没有接触过Android系统的开发,只是开发互联网应用,所以可能难免让系统大神贻笑大方,所以有不正确的地方欢迎指出,或者有交流意愿的朋友也可以加我微信,或邮件联系我。
联系方式
微信:953751759
邮箱:953751759@qq.com