您的位置:首页 > 移动开发 > Android开发

如何让A20,android开机自动启动C程序

2014-12-26 11:32 423 查看
///  xinit  增加:  xinit    /usr/local/bin/xfreerdp  192.168.1.196

1,修改 android/device/    init.sun7i.rc

........(略)

#add by jiangdou

    chmod 777 /system/bin/hello

    chmod 777 /system/bin/dou.sh

service init-setup /system/bin/dou.sh

    class main

    user root

    group root

    oneshot

........(略)

2,在device/softwinner/sugar-cubieboard2/新建dou.sh  文件,内容:

#! /system/bin/sh

#hello是C编译的文件,是静态编译,,放在system/bin/

/system/bin/hello     

#or

hello

echo "jiangdou"

exit

3,vi device/softwinner/sugar-cubieboard2/sugar_cubieboard2.mk   ///目的是执行make -j48  复制到out/target/product/sugar-cubieboard2/system/bin/

........(略)

#add by jiangdou

PRODUCT_COPY_FILES += \

        device/softwinner/sugar-cubieboard2/hello:system/bin/hello \

        device/softwinner/sugar-cubieboard2/dou.sh:system/bin/dou.sh

........(略)

4,开机,,效果

root@android:/ # ps | busybox grep hello

root      1409  1     652    108   c006bf0c 0001090c S /system/bin/hello

root      1411  1     652    108   c006bf0c 0001090c S hello

root@android:/ # 

证明开机自动运行了

5, C代码内容,,,,编译$  arm-linux-androideabi-gcc -o  hello hello.c  -static

#include<stdio.h>
#include <signal.h>
int main(void)
{

int i;
signal(SIGCHLD, SIG_IGN);

daemon(0, 0);//fork 强制后台运行!
// for(i = 0; i < 10; i++)
while(1)
{
sleep(1);
printf("hello......by jiangdou\n");
}
return 0;
}


adb  push xxx   /system  ---->ERROR    "Readonly-----file   system" 

adb  shell   && mount -o remount -o rw /system
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: