Android启动流程: https://blog.csdn.net/xingyu19911016/article/details/120023396 https://blog.csdn.net/ldxlz224/article/details/123238353 init 进程为第一个用户级别的进程,PID 为 1,它通过一系列的初始工作以及解析 init.rc(一个脚本文件)文件构建出 Android 系统运行的初始形态:即其他的 Android 服务进程大多在这个 init.rc 脚本中有描述并按照一定的条件启动。 .rc文件语法: https://www.cnblogs.com/lixuejian/p/15157634.html
init.target.rc
这个文件通常是 Systemd 系统中的一个配置文件,Systemd 提供了对系统的启动、进程管理、服务管理、挂载点管理、日志记录等功能的统一管理框架。它采用并行启动服务的方式,能够更快地启动系统,并且提供了更加健壮的系统和服务管理功能。init.target.rc 通常用于定义系统引导时要启动的目标(target),目标类似于传统 init 系统中的运行级别,它定义了一组需要启动的服务和任务。 init.target.rc使用举例:... ... on charger + chmod 664 /vendor/bin/TEST wait /dev/block/bootdevice/by-name/system mount ext4 /dev/block/bootdevice/by-name/system /system ro barrier=1 setprop sys.usb.configfs 1 ... ... /*定义好服务,该服务以来的可执行文件为/vendor/bin/LEDControl*/ +service TEST /vendor/bin/TEST + class charger/*指定类名,使得服务跟关机充电一起启动,想要开机启动可以改为on boot*/ + user root +比如想添加一个开机自启动的服务,就可以在init.target.rc中进行操作,并给设备节点进行赋予权限