1、前言
在Android系统中使用启动脚本.rc文件,可以在系统的初始化过程中进行一些简单的初始化操作,这些初始化启动脚本.rc文件直接被安装到目标板的根文件系统中,例如,init.rc启动脚本被init可执行程序进行解析,本文将简单介绍如何在MSM8953平台的Android系统中添加我们自己的启动脚本.rc文件。
2、Android添加启动脚本
关于.rc启动脚本的语法在本篇文章中将不会介绍,只介绍如何对Android源码进行修改,并在我们的目标板中添加启动脚本.rc文件的基本流程,我们需要添加的启动脚本为:
init.test.rc
需要添加到目标板系统的目录为:
/vendor/etc/init/hw/
接下来,将对在Android系统中添加启动脚本的流程进行分析:
进入到需要修改的目录下,如下命令:
$ cd msm8953_9.0/device/qcom/msm8953_64
修改该目录下的AndroidBoard.mk文件,可以使用vim编辑器或者其它软件:
$ vim AndroidBoard.mk
修改如下所示:
该代码表示要对init.test.rc文件进行编译,其中LOCAL_MODULE表示模块的名称,直接为文件的名称,LOCAL_SRC_FILES表示源文件的路径,在上面表示为当前目录,因此,我们需要在当前的目录下面,新创建我们需要添加的init.test.rc文件,LOCAL_MODULE_PATH表示目标文件打包在目标板系统的哪个路径,在上面表示,打包的路径为/vendor/etc/init/hw/,修改完成后,保存即可。
接下来修改该目录下的msm8953_64.mk文件,命令如下:
$ vim msm8953_64.mk
修改文件如下:
在上面的代码中,我们定于了一个变量TEST_INIT,然后变量的内容为我们需要添加的模块的名称,PRODUCT_PACKAGES为全局变量,表示编译时候需要打包的内容,在这里,我们需要把我们定于的模块,也就是要添加的启动脚本添加进去,否则的话,将不会进行编译,修改完成后,保存即可。
接下来修改该目录下的init.target.rc文件,命令如下:
$ vim init.target.rc
修改文件如下&#