码迷,mamicode.com
首页 > 移动开发 > 详细

android系统开发之开启启动

时间:2021-03-04 13:18:42      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:service   for   ble   important   需要   理解   span   何事   proc   

# Copyright (C) 2012 The Android Open Source Project   Android开源项目
#我们这里只对init.rc做一个简单的介绍,init.rc文件中只包含两种声明,on和service,我们可以把on称为行为,把service称为服务
(这里的服务和应用开发中四大组件中的服务以及通过context.getSystemService()所得到的系统服务都不是一个东西,我一直不知道该怎么给它起名,姑且叫它init服务)。
service声明了服务以及服务的各种行为。我们标题中说的开机启动进程就是这里的init服务。service只定义服务,但不能让服务做任何事情,如果你需要服务能够产生启动或
者停止等相关动作,你就需要on,每个on下面的有各种命令,其中就包括很多对init服务的操作。这里要提到的是,我们要修改的init.rc文件在device/friendly-arm/nanopi3
目录下,也就是厂商定制的版本,如果你使用的是别的开发板,可以去相应的目录找找。我们来看看init.rc中on和service两个典型的。

我们可以看到service下面也有很多东西,这里我们不叫它们命令了,叫属性或者参数也许会比较好,其中比较重要的是class core,表示这个service属于core这个class,
class我们不需要深入去管它,只要把它理解成一组service的集合就行。

# IMPORTANT: Do not create world writable files or directories. 不要创建世界可写文件或目录。
# This is a common source of Android security bugs. 这是Android安全漏洞的常见来源。


import /init.environ.rc
import /init.usb.rc
import /init.${ro.hardware}.rc
import /init.${ro.zygote}.rc
import /init.trace.rc

on early-init
    # Set init and its forked childrens oom_adj.
    write /proc/1/oom_score_adj -1000
# 定义一个 服务
service my-start /system/bin/sh /data/local/mystart.sh
    class main
    user root
    group root
    disabled
    oneshot
# 当行为dev.bootcomplete 完成时  开启
on property:dev.bootcomplete=1
    start my-start

 

android系统开发之开启启动

标签:service   for   ble   important   需要   理解   span   何事   proc   

原文地址:https://www.cnblogs.com/countryboy666/p/14476785.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!