本文转载自:http://blog.csdn.net/Kaiwii/article/details/7681736
之前一篇博文介绍了shell脚本文件的开机启动,地址是http://blog.chinaunix.net/uid-12845622-id-3054126.html,不过有些操作并不好通过shell去执行,也不好做成JNI动态库由上层调用,这时,可能这篇博文就能帮上你,本文以创建文件夹为例,实现开机自启动C程序。
1、创建C程序文件夹
cd android_src/external
mkdir djstava
2、在建好的文件夹下新建源文件及其Android.mk
test.c
- #include <stdio.h>
- #include <stdlib.h>
- int main()
- {
- int ret = mkdir("/system/djstava");//请确保你的用户有对相应目录的权限
- if(ret == -1)
- {
- printf("mkdir failed! ");
- return -1;
- }
- return 0;
- }
Android.mk
- LOCAL_PATH := $(call my-dir)
- include $(CLEAR_VARS)
- LOCAL_MODULE_TAGS := eng
- LOCAL_MODULE := djstava
- LOCAL_SRC_FILES := $(call all-subdir-c-files)
- include $(BUILD_EXECUTABLE)
3、修改开机脚本init.rc文件,增加
- service djstava_test /system/bin/djstava
- oneshot
4、重新编译
cd android_src
make
5、开机测试
看看文件夹/system/djstava是否已经被创建