首先简单讲一下Android的结构:首先是Applications(应用层)、接着:Application Framework(程序框架)、然后:类库和Android运行时(有一个Dalvik虚拟机),最下面是:Linux内核。
Applications:我们一般说的应用层的开发就是在这个层次上进行的,当然包括了系统内置的一组应用程序,使用的是Java语言
Application Framework:无论系统内置或者我们自己编写的App,都需要使用到这层,比如我们想弄来电黑名单,自动挂断电话,我们就需要用到电话管理(TelephonyManager) 通过该层我们就可以很轻松的实现挂断操作,而不需要关心底层实现
类库和Android运行时:Android给我们提供了一组C/C++库,为平台的不同组件所使用,比如媒体框架;而Android Runtime则由Android核心库集 + Dalvik虚拟机构成,Dalvik虚拟机是针对移动设备的虚拟机,它的特点:不需要很快的CPU计算速度和大量的内存空间;而每个App都单独地运行在单独的Dalvik虚拟机内(每个app对于一条Dalvik进程)而他的简单运行流程如:
Linux内核:这里就是涉及底层驱动的东西了,一些系统服务,比如安全性,内存管理以及进程管理等