android 串口提权

在项目中要用到android主板的RS232串口对设备进行控制,在测试过程发现要对串口进行提权才能操作。主板是3399PRO搭载android 9.0。系统有adb的root权限。如果只是单次操作,可以直接使用ADB root对串口进行提权,然后就可以进行串口操作了。

adb root

adb shell

# chmod 666 /dev/ttysWK9

这样代码就可以操作串口。

但系统重启后又会失去权限。

设备在使用过程中不可能每次都用adb root进行提权。

仔细分析了android启动过程,发现可以在init.rc中做文章。

1、前提是有adb root权限。
2、使用adb root提权后
3、使用adb shell进入shell命令行,将init.rc备份 cp init.rc init.rc.bak
4、将根目录下的init.rc下载来下
    adb pull /init.rc d:/
5、编辑init.rc,注意不要使用中文,也不要转码
    在on boot这一节的最后加入,关于init.rc可以参考《Android系统启动——3init.rc解析
        chmod 666 /dev/ttysWK9
    保存
6、将init.rc上传到根目录下,替换原来的
    adb push d:/init.rc /
7、检查init.rc是否已经添加ttysWK9的权限修改
    cat init.rc|grep ttysWK1
8、重启设备 reboot或断电重启。

经过以上操作后,系统每次启动时会自动对串口提权。

软件就不会提示无权限了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值