Android init.rc如何启动service去执行sh脚本

原创 2016年06月02日 10:29:41

在Android开发中经常会遇到,在应用层想去执行一个脚本来完成某些底层相关的操作,但在应用层又没有root权限。

所以,老大给出一种方法完美解决此问题,又把上层和底层进行了隔离,非常好的策略。

1、在需要执行脚本的时候,应用层去设置一个property,在init.rc中去监测此property的值,当监测到此property的值符合要求时,去start service,来执行我们的脚本文件;

2、脚本执行完成后,在去重置此property的值,来stop service。


例如:

有产品需求需要在工厂菜单里面添加M5芯片的升级,方便以后的调试。

1、在工厂apk里面,M5需要升级的时候,去setprop dev.skym5update.enable=1 去启动sky_M5_update  service来执行sky_m5_update.sh

2、脚本执行完成后重置setprop dev.skym5update.enable=0来停止sky_M5_update  service

3、sky_M5_update  service在开机的时候不需要去执行,把参数disabled加上即可。


#for V620 M5 update
service sky_M5_update /system/bin/sky_m5_update.sh
    class main
    user root
    group root
    disabled

on property:dev.skym5update.enable=1
    start sky_M5_update
on property:dev.skym5update.enable=0
    stop sky_M5_update

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Android system/bin 命令

You could do something like that:   public static boolean runRootCommand(String command) {  Proce...
  • AMinfo
  • AMinfo
  • 2012年07月25日 19:58
  • 18947

[init.rc] android开机过程执行shell脚本

1、在system/core/rootdir/etc/下添加脚本文件,命名为myshell.sh,脚本内容可如下         #! /system/bin/sh 2、修改system/core...
  • muojie
  • muojie
  • 2012年09月05日 19:44
  • 3733

init.rc启动 shell脚本

[Android] 在開機的時候,執行你想要的 shell script 雖然 init.rc 很好用,但還是有其缺陷... 像是我要 echo 某些字串到檔案時,他就做不到了 :( 所以可以搭...

Android 应用通过init.rc启动service去执行具有root权限sh脚本

在Android开发中经常会遇到,在应用层想去执行一个脚本来完成某些底层相关的操作,但在应用层又没有root权限。 所以,老大给出一种方法完美解决此问题,又把上层和底层进行了隔离,非常好的策略。...
  • wf_fln
  • wf_fln
  • 2017年08月19日 22:35
  • 240

Android开机执行shell脚本

软硬件环境 OTT BOx with android 5.1.1 前言在应用程序启动之前,往往需要在Android启动过程中去对系统做一些设置,如修改某些文件夹的属主和文件的权限等。本文实现在init...

Android 7.0 init.rc的一点改变

在Android 7之前的版本中,系统Native服务,不管它们的可执行文件位于系统什么位置都定义在根分区的init.*.rc文件中。这造成init*.rc文件臃肿庞大,给维护带来了一些不便,而且其中...

Android7.0解析Init.rc文件

在解析Init.rc之前需要对init.rc文件有一个认识,init.rc是由一种被称为"Android初始化语言"(Android Init Language,这里简称为AIL)的脚本写成的文件.该...

init进程 && 解析init.rc && init.rc中启动sh文件 && JAVA中跑shell && 文件和文件夹拷贝

Android启动后,系统执行的第一个进程是一个名称为init 的可执行程序。提供了以下的功能:设备管理、解析启动脚本、执行基本的功能、启动各种服务。代码的路径: system/core/init,编...

Android如何配置init.rc中的开机启动进程(service)

开篇:为什么写这篇文章 先说下我自己的情况,我是个普通的大四学生,之前在学校一直做Android应用开发,找实习的时候也一直想找相关的工作,来到现在这家公司以后,由于业务调整,被领导安排去做底层开发,...

android init.rc中启动的service 默认是disable的,后续如何启动此服务

如果 android init.rc中启动的service 默认是disable的,如何才能启动此服务呢?
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android init.rc如何启动service去执行sh脚本
举报原因:
原因补充:

(最多只允许输入30个字)