转眼间我的《Android开发实践》系列文章已经写了三十多篇了,很多文章写得还是蛮用心的,所以很感谢51CTO的编辑们经常加精和推荐。我发现通过写作的确可以逼着自己去深入了解一些平时开发中并不会去挖掘的细节,这对自己帮助挺大的,后面遇到好的主题我还会继续写下去。

以前写的《Android开发实践》这个系列主要偏向Android应用层的开发,从一开始学习Android就计划好了要往底层深入,如今正好在工作中有机会涉及Android源码开发,因此,再开辟一个系列,就叫《Android内核开发》吧,主要分享一些Android源码方面的开发经验

目前网上和市面上关于Android源码的博客和书籍挺多的,其中偏向对Android源码的分析的比较多,实践性强的相对比较少,我的目标是更多的分享一些实践性强的文章,我在学习一个新的领域时,总会有很多很多的困惑,我喜欢带着这些困惑去学习和实践,我相信只有把各种疑问和困惑都解决了,才算是真正的入门了。

比如在开始Android源码开发之前,我曾经有过的困惑如下所示,在本系列的博文中,我会从这些困惑中选取一些主题来写,虽然有些主题已经有人写过,但是不妨碍我来给出我自己的理解和分析,只希望对初学者有所帮助。当然,随着研究的深入,这个列表也会不断地更新的。

1. 用来管理Android源码的repo是怎么工作的?


2. Android源码目录结构是怎样的?


3. Android源码和Linux内核代码的关系是怎样的?


4. Android源码怎么编译?


5. Android编译完成后有哪些输出文件?各有什么作用?


6. Android系统怎么烧录到手机/开发板上?怎么引导启动?


7. Android启动流程是怎样的?涉及到哪些进程或者服务?


8. 如何分析Android启动的Log信息?


9. 如何优化和加速Android的启动过程?


10.如何自定义Android启动动画?


11.如何在Android源码中添加一个应用?


12.如何在源码层添加一款锁屏模块?


13.如何在源码层开发Camera相关应用


14.如何编写Android HAL层驱动?


15.如何开发自己的Android ROM?


16.如何剪裁和移植Android系统到新的开发板?


17.其他待添加的问题和主题……


欢迎大家关注本系列,有任何疑问、建议或者意见欢迎博客留言或者来信lujun.hust@gmail.com交流,谢谢。