init.rc启动 shell脚本
来源:互联网 发布:mac apktool使用教程 编辑:程序博客网 时间:2024/06/07 05:26
[Android] 在開機的時候,執行你想要的 shell script
雖然 init.rc 很好用,但還是有其缺陷… 像是我要 echo 某些字串到檔案時,他就做不到了 :(
所以可以搭配一個 .sh 的檔案,讓他開機的時候去執行這個 .sh 即可。
建議修改方式:
[1] 在 AndroidBoard.mk 裡面將你的 .sh 包起去
file := $(TARGET_OUT)/etc/my.sh
ALL_PREBUILT +=(file) (file) : $(LOCAL_PATH)/my.sh | $(ACP)
$(transform-prebuilt-to-target)
[2] 在你想要加進去的 init.rc 中加入下面這段:
on boot
exec /system/bin/sh /system/etc/my.sh
這樣子就可以嚕 ^^ 裡面用粗體紅字的就是要注意的地方囉
Android::开机自动执行shell脚本
在应用程序启动之前,往往需要在Android启动过程中去对系统做一些设置,如修改某些文件夹的属主和文件的权限,本文实现在init.rc中调用shell脚本,而所有对系统资源的修改和配置都在此shell脚本中实现。
1、在system/core/rootdir/etc/init.djstava.sh脚本文件,以开机获取IP地址为例,脚本内容可如下
#! /system/bin/sh
ifconfig eth0 192.168.18.200 netmask 255.255.255.0 up
route add default gw 192.168.18.1 dev eth0
2、修改system/core/rootdir/Android.mk文件,增加语句
copy_from += etc/init.djstava.sh
3、修改device/$(硬件平台)/init.rc文件,增加语句
将mount yaffs2 mtd@system /system ro remount 改为
mount yassf2 mtd@system /system rw remount
chmod 755 /system/etc/init.djstava.sh
chown root shell /system/etc/init.djstava.sh
service eth0_set /system/etc/init.djstava.sh
oneshot
4、设置dns,修改system/core/rootdir/init.rc,在setprop net.tcp.buffersize.gprs命令后增加如下语句
setprop net.dns1 211.167.97.67
setprop net.dns2 202.96.209.133
[init.rc] android开机过程执行shell脚本
1、在system/core/rootdir/etc/下添加脚本文件,命名为myshell.sh,脚本内容可如下#! /system/bin/sh
2、修改system/core/rootdir/Android.mk文件,增加语句
copy_from += etc/myshell.sh
3、修改相应的init.rc文件,增加语句
将mount yaffs2 mtd@system /system ro remount 改为
mount yassf2 mtd@system /system rw remount
//以下的内容一定不要乱放,一定把它们放在跟它们类似的命令旁边,如service就放在最后。
chmod 755 /system/etc/myshell.shchown root shell /system/etc/myshell.sh
service myshell /system/etc/myshell.sh
oneshot
init脚本的关键字可以参考init进程的system/core/init/keyword.h文件。
init.rc的使用方法,可以参考说明文件system/core/init/readme.txt
详细的讲解就参考:http://blog.csdn.net/magicyu2/article/details/5392524
如果想要修改启动过程只需要修改init.c(system/core/init)或者init.rc里的内容即可.
参考:
http://www.eoeandroid.com/thread-165459-1-1.html
http://www.cnblogs.com/perseus/archive/2012/03/19/2405503.html
Android pppd_gprs脚本启动过程
http://blog.zol.com.cn/4473/article_4472516.html
Android: 启动init.rc 中service的权限问题
</div>
阅读全文
0 0
- init.rc启动 shell脚本
- init.rc启动 shell脚本
- init.rc启动 shell脚本
- init进程 && 解析启动脚本init.rc && init.rc中启动sh文件 && JAVA中跑shell
- 在android init.xxx.rc中启动shell脚本
- Android启动脚本init.rc
- Android启动脚本init.rc
- Android启动脚本init.rc
- Android启动脚本init.rc
- Android启动脚本init.rc
- Android启动脚本init.rc
- Android启动脚本init.rc
- Android启动脚本init.rc
- Android启动脚本init.rc
- Android启动脚本init.rc
- Android启动脚本init.rc
- Android启动脚本init.rc
- Android启动脚本init.rc
- 2014-03-28-JDK环境变量配置
- 【esp8266】MCU下arduino uno添加LED开关代码示例
- js通过正表达式获取链接参数id
- populating-next-right-pointers-in-each-node(i,ii)
- ubuntu 16.04 LTS
- init.rc启动 shell脚本
- React.js入门与案例开发
- android makefile批处理文件夹的资源
- try-catch-finally执行顺序及多return语句效果
- 2014-03-28-vs2008破解
- 关于谷歌控制台存在的一个问题
- Java Markdown
- Educational Codeforces Round 33 893D
- socket 1