本文转载自:http://blog.csdn.net/VOlsenBerg/article/details/71085610

我有一个需求就是在Android系统开机的时候把一个配置文件放到Android系统的data目录中。 
我使用的方法就是在 init.rc 中添加一个服务,这个服务就是执行一个将文件拷贝到指定目录的脚本,下面是添加服务的方法.

首先,写一个脚本mveGTouchA.sh, 这个脚本的内容就是把一个配置文件放到data目录中:

#! /system/bin/sh

cp /system/etc/eGTouchA.ini /data
echo "copy eGTourchA.ini done"
  • 1
  • 2
  • 3
  • 4

之后在 init.rc 文件的最后加上:

service mveGTouchA /system/bin/mveGTouchA.sh
class main
user root
group root
oneshot
  • 1
  • 2
  • 3
  • 4
  • 5

上面这一段是添加了一个服务。

然后,还需要在init.rc里添加这么一段代码:

on property:sys.boot_completed=1
start mveGTouchA
  • 1
  • 2

作用是启动前面添加的服务。 
注意:init.rc 文件的执行是有特定的顺序的,添加这些代码的时候,最好都放在和原来 init.rc 里面格式类似的地方

你可以把你需要执行的工具或脚本直接放在/out/…/system/bin的目录下,也可以放在你的源码中,然后修改 device.mk , 在系统启动的时候,将你要执行的工具或脚本拷贝到 /out/…/system/bin 下。 
下面是修改 device.mk 的范例:

PRODUCT_COPY_FILES += \
device/rockchip/rk3288/mveGTouchA.sh:/system/bin/mveGTouchA.sh \
  • 1
  • 2

这些做完之后,编译,烧写,在Android启动的时候,就会自动执行你添加的服务了。

如果喜欢我写的博客,也可以微信搜索公众号: 学吧程序员 关注我的公众号

Android5.1 在init.rc 中添加自己的服务【转】的更多相关文章

  1. Android: 启动init.rc 中service的权限问题【转】

    转自:http://www.linuxidc.com/Linux/2011-04/35014.htm 通过property_set("ctl.start", service_xx) ...

  2. init进程 && 解析Android启动脚本init.rc && 修改它使不启动android && init.rc中启动一个sh文件

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

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

    本文转载自:http://blog.csdn.net/qq_28899635/article/details/56289063 开篇:为什么写这篇文章 先说下我自己的情况,我是个普通的大四学生,之前在 ...

  4. Android 重定向 init.rc中服务的输出

    在init.rc中运行的服务,由于系统启动的时候将标准输出重定向到了/dev/null, 所以服务中的打印信息都不可见. 但调试时可能需要看到其中的打印信息,因此就有了logwrapper这个工具:l ...

  5. Android源码分析(十七)----init.rc文件添加脚本代码

    一:init.rc文件修改 开机后运行一次: chmod 777 /system/bin/bt_config.sh service bt_config /system/bin/bt_config.sh ...

  6. 在centos中添加开机自启动服务

    将服务的shell脚本添加到/etc/rc.d的rc.local文件的最后面,需要在服务名称的前面加上其路径. 例如我要将httpd添加到开机自启动中,需要在rc.local添加如下代码 /usr/s ...

  7. Android使用init.rc触发脚本实现隐藏内置应用

    [实现逻辑] 通过在property_service.c中设置标志位,在设置中实现接口改变标志位, 使用init.rc中声明的服务来侦听标志位的变化,显式启动声明的服务,执行对应的脚本,把应用后缀从a ...

  8. android添加系统(服务、应用)

    1. 添加系统服务 1.1 添加方式1:(不加入servicemanager统一管理的) 看Android6.0.1 init.rc解析中的第2章和第3章 方式1: 1). 写一个测试脚本test.s ...

  9. i.mx6 Android5.1.1 初始化流程之init.rc解析(未完成)

    接上一篇:i.mx6 Android5.1.1 初始化流程之init进程 参考资料:http://blog.csdn.net/mr_raptor/article/category/799879 这个博 ...

随机推荐

  1. Oracle 当输入参数允许为空时

    场景: 有一个存储过程p_test 带有多个输入参数code.name.number p_test(code IN VARCHAR2,nameIN VARCHAR2,number IN VARCHAR ...

  2. python--3、函数

    定义: 定义函数时,也相当于定义变量.会把函数体内的代码存入开辟的内存空间中.使用函数时,通过func() 声明是函数,其对应的值为代码.函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执 ...

  3. Power BI 入门资料

    1.官方文档 Power BI Desktop:https://docs.microsoft.com/zh-cn/power-bi/desktop-getting-started Power BI 报 ...

  4. window phone 8 开发准备工作(一)

    一.下载安装Window phone SDK 1.Windows Phone SDK 8.0下载 http://www.microsoft.com/ZH-CN/download/details.asp ...

  5. CorelDRAW记事本写实图标的制作流程

    本篇教程用CorelDRAW快速制作记事本写实图标,在制作的过程中主要使用了位图填充和金属材质的实现,加之一些常用工具的用法处理,最后将对象剪裁至图文框就好了,现在跟小编一起来看看详细的操作吧! 使用 ...

  6. 肯德基收银系统java

    参考肯德基官网的信息模拟肯德基快餐店的收银系统,合理使用C++或Java或Python结合设计模式(2种以上)至少实现系统的以下功能: 1.正常餐品结算和找零. 2.基本套餐结算和找零. 3.使用优惠 ...

  7. apicloud 注意事项

    页面布局时头部和内容一定要分开,状态栏寖入式要用.可以用api.sendEvent广播出去,api.addlisterten监听. api.openWin打开页面会有黑色闪屏,加bgColor:'#f ...

  8. C语言右移操作在汇编层面的相关解释

    在 CSDN 看到帖子回复如下: x=y>>2;004122A8  mov         eax,dword ptr [y] 004122AB  sar         eax,2 '算 ...

  9. C#第八节课

    for的穷举迭代.while.do  while using System;using System.Collections.Generic;using System.Linq;using Syste ...

  10. Cursor、Exception、Procedure、Function、Package、Trigger(day06)

    回顾: 1.record类型 定义record类型,声明变量,保存s_dept表中id = 31部门信息 declare /* 定义record类型 */ type deptrecord is rec ...