开机自启shell脚本如下:

diff --git a/device/rockchip/common/sepolicy/file_contexts b/device/rockchip/common/sepolicy/file_contextsindex eb6b5e4bb4..0bbe781a7c 100755--- a/device/rockchip/common/sepolicy/file_contexts+++ b/device/rockchip/common/sepolicy/file_contexts@@ -165,3 +165,4 @@ /system/vendor/bin/camera_test u:object_r:camera_test_exec:s0/system/bin/xone-agent u:object_r:xone-agent_exec:s0+/system/bin/myshell.sh u:object_r:myshell_exec:s0diff --git a/device/rockchip/common/sepolicy/myshell.te b/device/rockchip/common/sepolicy/myshell.tenew file mode 100644index 0000000000..11fc663901--- /dev/null+++ b/device/rockchip/common/sepolicy/myshell.te@@ -0,0 +1,18 @@+type myshell, domain;+type myshell_exec, exec_type, file_type;+ + +init_daemon_domain(myshell)+ +allow myshell init_tmpfs:file create_file_perms;+allow myshell self:capability { dac_override net_admin net_raw setgid setuid };+allow myshell device:dir { open read };+allow myshell shell:lnk_file { read };+allow myshell rootfs:lnk_file { getattr };+allow myshell socket_device:sock_file { write };+ +allow myshell shell_exec:file { getattr read};+allow myshell fuse:dir { search write add_name getattr};+allow myshell fuse:file { create write open getattr};+allow myshell system_file:file { execute_no_trans};+permissive myshell;diff --git a/device/rockchip/rk3399/init.rk3399.rc b/device/rockchip/rk3399/init.rk3399.rcindex 805ce6f79e..743e6d3aa2 100755--- a/device/rockchip/rk3399/init.rk3399.rc+++ b/device/rockchip/rk3399/init.rk3399.rc@@ -31,10 +31,18 @@ on boot chmod 0777 /system/bin/xone-agent start xone-agent +chown root shell /system/bin/myshell.sh+chmod 0777 /system/bin/myshell.sh+start myshell+ service xone-agent /system/bin/xone-agentuser rootgroup rootdisabledoneshot -+service myshell /system/bin/myshell.sh+user root+ group root+ disabled+ oneshotdiff --git a/device/rockchip/rk3399/myshell.sh b/device/rockchip/rk3399/myshell.shnew file mode 100644index 0000000000..c5505b6adc--- /dev/null+++ b/device/rockchip/rk3399/myshell.sh@@ -0,0 +1,6 @@+#!/system/bin/sh+while [ true ] +do+echo "123"+donediff --git a/device/rockchip/rk3399/rk3399_all.mk b/device/rockchip/rk3399/rk3399_all.mkindex 8bbcdef3a3..db7136f077 100755--- a/device/rockchip/rk3399/rk3399_all.mk+++ b/device/rockchip/rk3399/rk3399_all.mk@@ -103,6 +103,7 @@ PRODUCT_COPY_FILES += \device/rockchip/rk3399/rockchip_test/rockchip_test.sh:/system/bin/rockchip_test.shPRODUCT_COPY_FILES += \+ device/rockchip/rk3399/myshell.sh:/system/bin/myshell.sh \device/rockchip/rk3399/top:/system/bin/top \device/rockchip/rk3399/xone-agent:/system/bin/xone-agent \device/rockchip/rk3399/xoneagent.sh:/system/bin/xoneagent.sh \diff --git a/system/sepolicy/file_contexts b/system/sepolicy/file_contextsindex d64e67d29b..01e69da280 100644--- a/system/sepolicy/file_contexts+++ b/system/sepolicy/file_contexts@@ -220,7 +220,7 @@ /system/bin/update_engineu:object_r:update_engine_exec:s0 /system/bin/bspatchu:object_r:update_engine_exec:s0 /system/bin/selectrildlibu:object_r:selectrildlib_exec:s0-+/system/bin/myshell u:object_r:myshell_exec:s0 

然后就是死活起不来,但是和别人的是一模一样的,csdn都翻烂了,最后找到解决办法:

--- a/device/rockchip/rk3399/init.rk3399.rc+++ b/device/rockchip/rk3399/init.rk3399.rc@@ -33,7 +33,6 @@ on bootchown root shell /system/bin/myshell.sh chmod 0777 /system/bin/myshell.sh-start myshellservice xone-agent /system/bin/xone-agentuser root@@ -41,8 +40,12 @@ service xone-agent /system/bin/xone-agentdisabledoneshot -service myshell /system/bin/myshell.sh-user root+service myshell /system/bin/sh /system/bin/myshell.sh+ user rootgroup rootdisabledoneshot+ seclabel u:r:shell:s0++on property:sys.boot_completed=1+start myshell

其实就是在service下面加上seclabel u:r:shell:s0就行了