http://java-admin.iteye.com/blog/927081

Android——init.rc脚本

在Android中使用启动脚本init.rc,可以在系统的初始化中进行简单的操作。

init.rc启动脚本路径:system/core/rootdir/init.rc

内容:

  • Commands:命令
  • Actions:动作
  • Triggers:触发条件
  • Services:服务
  • Options:选项
  • Properties:属性

Commands是一些基本操作。如:

mkdir /system
mkdir /data 0771 system system
mkdir /persist 0771 system system
devwait /dev/block/mmcblk0p12
mount ext3 /dev/block/mmcblk0p

Action表示一系列命令,通常在Triggers中调用,如:


on init //表示一个触发条件

sysclktz 0

loglevel 3

# setup the global environment
export PATH /sbin:/system/sbin:/system/bin:/system/xbin
export LD_LIBRARY_PATH /system/lib
export ANDROID_BOOTLOGO 1

Services通常表示启动一个可执行程序,Options是服务的附加内容,用于配合服务使用。

service vold /system/bin/vold //vold是服务名称,/system/bin/vold是所对应的可执行程序。
socket vold stream 0660 root mount //socket是配合服务使用的选项
ioprio be 2

service netd /system/bin/netd
socket netd stream 0660 root system

配合服务使用的选项有socket,user,group,oneshot。

oneshot表示该服务只启动一次,而如果没有oneshot选项,这个可执行程序将一直存在——如果可执行程序被杀死,则会重新启动。

Properties是系统中使用的一些值,可以进行设置和读写。

setprop ro.HIDDEN_APP_MEM 5120//setprop用于设置属性
setprop ro.CONTENT_PROVIDER_MEM 5632
setprop ro.EMPTY_APP_MEM 6144

...

on property:ro.kernel.qemu=1 //on property用于判断属性
start adbd

这里的属性在整个android系统运行中都是一致的。

init脚本的关键字可以参考init进程中的system/core/init/keyword.h文件。如:

KEYWORD(chroot, COMMAND, 1, do_chroot) //chroot是命令,do_chroot()是调用的函数,这个函数在init进程中的system/core/init/builtins.c文件中定义。

init.rc使用方法,见说明文件system/core/init/readme.txt

更多相关文章

  1. Activity 全透明属性
  2. android edittext属性说明
  3. Android属性动画 Property animation
  4. 初学Andriod之跑马灯属性设置
  5. Android attrs文件(自定义)属性详解
  6. AndroidManifest文件中android属性
  7. android:exported 属性详解
  8. Android中RelativeLayout布局各个xml相对布局属性的介绍和使用
  9. [android]控件ImageView的常用属性

随机推荐

  1. Android(安卓)Native层Binder.transact()
  2. Android(安卓)LsitView的实现
  3. 栈处理问题
  4. android back和home键的捕获
  5. Android——拍照、剪切、得到图片/从相册
  6. android2.1短信应用
  7. android N 获取手机内存信息方案
  8. android 开发-Toast控件的实现
  9. Android实现文字垂直滚动、纵向走马灯效
  10. Android中Handle总结