Android P开机自动运行camera连拍脚本

1,
新建一个sh脚本cameratesttool.sh
#!/system/bin/sh

#循环执行次数
for times in $(seq 5)
do
    #启动相机
    am start com.android.camera2/com.android.camera.CameraLauncher
    #延时2s
    sleep 2s

    #连续5次点击拍照按钮
    for clicktimes in $(seq 5)
    do
        input tap 370 1170
        sleep 3s
        echo clicktimes:$clicktimes
    done
    
    #点击Back键退出相机
    input keyevent 4
    sleep 2s

    echo opration:$times
done

2,将脚本放到
device/qcom/sdm660_64/下,
修改sdm660_64.mk

+PRODUCT_COPY_FILES += \
+    device/qcom/sdm660_64/cameratesttool.sh:system/bin/cameratesttool.sh
+

3,添加开机自动启动服务
修改init.target.rc文件
 
+#camera test tool
+service cameratesttool /system/bin/sh /system/bin/cameratesttool.sh
+    class main
+    user root
+    group root
+    oneshot
+    disabled
+    seclabel u:r:cameratesttool:s0
+
+on property:sys.boot_completed=1
+    start cameratesttool

4,
添加系统权限:
device/qcom/sepolicy/vendor/sdm660/file_contexts
+#camera test tool
+/system/bin/cameratesttool.sh                              u:object_r:cameratesttool_exec:s0
+

添加文件:device/qcom/sepolicy/vendor/sdm660/cameratesttool.te

type cameratesttool, domain, coredomain;
type cameratesttool_exec, exec_type, file_type;

init_daemon_domain(cameratesttool)

allow cameratesttool shell_exec:file { getattr execute read open };
allow cameratesttool storage_file:lnk_file { read   };
allow cameratesttool tmpfs:dir { search  };
allow cameratesttool mnt_user_file:dir { search  };
allow cameratesttool mnt_user_file:lnk_file read;

5,编译
测试make bootimage
./build.sh bootimage -j8  2>&1 | tee build.log

编译时,可以查看自己的规则是否编译进去,
可以查看文件 android/out/target/product/项目名称/obj/ETC/sepolicy_intermediates/ 下的 policy.conf
这个里面可以查看到是否编译进去了,
比如你 定义了一个type什么名称,在文件里搜索,查看能否看到。
————————————————
单替换权限,快速编译sepolicy并验证
mmma system/sepolicy
adb push out/target/product/xxx/system/etc/selinux /system/etc/selinux
adb push out/target/product/xxx/vendor/etc/selinux /vendor/etc/selinux

全编译系统,刷机验证。

注:需要机器有root权限下才能操作执行。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值