出于工作需要,或者是为了技能上的提升,很多android开发工程师都会选择去研究学习android源代码,毕竟理解了底层逻辑,我们才能更好的使用。那么我们应该如何正确学习android源代码呢?今天小编就为大家分享一些Android源代码学习方法。
如何正确学习Android源代码
Android源代码是什么?
android源码就是android系统的源代码,由google公司开发发布的纯净的安卓系统代码,然后再由各大手机开发公司自行优化开发。简单的说就是原料,未经加工过的。外面可以自由免费获取。现在,的很多手机厂商都会在android原系统的基础上开发优化属于自己的android系统。
什么样的人会去学习Android源代码?
其实一般从事android开发的人,都会有学习android源代码的冲动,学习android源码,能帮助我们理解android系统的底层实现,帮助我们更好的去使用android系统提供的功能来优化我们的app开发。也有些人是因为工作需要去学习的,例如一些手机厂商想要开发自己的个性化系统,就需要员工去学习android源代码。
学习android源代码需要一定的知识储备
1)Java基础:Java是AOSP的主要语言之一. 没得说, 这个是必需熟练掌握的.
2)熟练的Android App开发:不要一接触android开发就想去学习android源码,等你有了一定的android开发基础之后再去试着研究。
3)Linux:这个主要是因为Android基于Linux的, 并且AOSP的推荐编译环境是Ubuntu 12.04. 所以熟练的使用并了解Linux这个系统是必不可少的. 如果你想了解偏底层的代码, 那么必需了解基本的Linux环境下的程序开发. 如果再深入到驱动层, 那么Kernel相关的知识也要具备.
4)Make:AOSP使用Make系统进行编译. 了解基本的Makefile编写会让你更清晰了解AOSP这个庞大的项目是如何构建起来的.
5)Git:AOSP使用git+repo进行源码管理. 这应该是程序员必备技能吧.
6)C++:Android系统的一些性能敏感模块及第三方库是用C++实现的, 比如: Input系统, Chromium项目(WebView的底层实现).
研究学习android源代码还要有一定的软硬件支持
一台Nexus系列手机,用来做测试机;
一台配有Linux操作系统的电脑,方便随时编译Android源代码;
一些android源代码查看工具,如Android Studio、Eclipse
阅读安卓源代码的正确姿态
阅读Android源码绝不是从源码工程按顺序一个个的文件,从首行看到尾行。正确而高效地阅读Android源码的姿态应该是以某一个主线为起点,从上层往底层,不断地追溯,在各个模块、文件、方法之间来回跳转,反复地阅读,理清整个流程的逻辑。同时带着思考去看源码,尝试去揣测作者的用意,去理解代码的精妙之处,去思考代码可能存在的缺陷,去总结优秀的代码设计思想。需要操作的地方及时操作做进行验证。
参考一些android源码教程和书籍来学习
以上说的都是一关于android源代码的基本概念、学习android源码前的一些准备和一个简单的思路。相信大家对如何正确学习Android源代码也有了一些认识,大体方向就是这样,具体的学习过程可以去买一些相关的书籍或者百度一些博客,如老罗的博客。根据这些参考资料去系统学习,才不至于学的稀里糊涂,甚至半途而废。
热点新闻