总结一下学习android必须要掌握或者了解的关键技术:
- android编译系统。包括怎么修改经典错误,去除JDK版本、机器位数等要求,怎么将一个应用程序编到系统中,怎么添加底层库并编写makefile文件,怎么修改移植过程中需要修改的makefile文件,以及编译过程中会用到的各种命令。
- android应用开发四大组件,即使你不做应用程序,也需要了解一下。其中数intent尤为重要,因为其他三个组件都跟它相关。
- android系统移植。首先了解一般嵌入式移植的步骤,然后了解android移植,这样比较容易。并比较两者移植的差别,这样才能区别学习,容易掌握。
- android原生态c开发,说白了,就是这么把linux系统下的c编程用到android上。其实很简单,就是编译链的差别而已。
- android SDK开发和NDK开发,前者还是稍微看下,看的深浅取决你的研究方向;后者就真的要好好了解一下了,因为个人感觉与其说这是一种方法,不如说这是一种思想,值得研究,而且据我了解,目前很多稍微大点的android应用开发项目都会用到NDK开发。
- 追踪技术,这是android源码定制中最关键的技术。说通俗一点,就是如果你想要改什么,你要能很快从表面现象追踪到它的代码,牢牢把它抓在手里,这样才能很快的进行修改,让它变成一块橡皮泥,随你拿捏,想让它变成什么形状的就能捏成形状。