Android 框架层¶
最终目标就是让你的嵌入式系统运行起用户和开发者所熟悉的 Android 环境,而不仅仅是我们在上一章所介绍的原生用户空间。这不仅包括完整的系统服务集合和提供标准 API 供应用开发者使用的包,还包括一些不太可见的组件,如支持系统服务运行的一系列原生守护进程,以及硬件抽象层(HAL)。本章将介绍 Android 框架层如何在原生用户空间之上运作,并讨论如何与它进行交互和定制。
值得注意的是,与之前讨论过的 Android 组件不同——那些组件可以通过多种方式修改其行为——Android 框架层大多数情况下只能原样使用。例如,你无法选择运行哪些系统服务,因为它们不是从脚本或配置文件中启动的。相反,修改框架层通常需要深入其源码和/或添加你自己的代码来定制其行为。
因此,这类定制工作要求你对 Android 源码有深入的了解,并且本质上与版本相关。不过,我们会尽量涵盖足够多的核心内容,使你能够开始自行探索 Android 的内部结构。尽管如此,请做好长期投入的准备,因为 Android 源码相当庞大,而且新版本发布的速度非常快。