请选择 进入手机版 | 继续访问电脑版

雨滴科技技术论坛

 找回密码
 立即注册
查看: 76|回复: 1

Android为动态枚举设备ttyUSB0提权

[复制链接]

425

主题

1864

帖子

7629

积分

版主

Rank: 7Rank: 7Rank: 7

积分
7629
QQ
扫一扫,手机访问本帖
发表于 2020-7-29 16:06:17 | 显示全部楼层 |阅读模式
在系统中存在这样的设备:
通常情况下,这个设备不存在,只有在特定情况下才会出现。
比如:ttyUSB0, 只有在插入USB转串口的OTG设备后才会出现。

对于这样的设备,默认是没有写权限的。
如果有root权限,使用命令:
chmod 0666 /dev/ttyUSB0
即可赋予其写权限。

但是,对于产品来说,你不能要求用户或第三方开发人员每次去输入一个命令,而且,最终产品往往是没有root权限的,此时这个chmod命令也提升不了权限。

在Android系统中的init进程中,会启动一个ueventd的服务,
ueventd这个服务会对ueventd.rc进行解析(高通平台会额外对ueventd.qcom.rc进行解析)。
这个rc脚本里定义了各种设备的路径,权限,Owner等。
修改这个rc文件,加入对应的设备(如:/dev/ttyUSB0)描述即可
如:
system/core/rootdir/ueventd.rc
  1. # add the read write right of ttyUSB*
  2. /dev/ttyACM0          0666   radio      radio
  3. /dev/ttyUSB0              0666   radio      radio
  4. /dev/ttyUSB1              0666   radio      radio
  5. /dev/ttyUSB2              0666   radio      radio
  6. /dev/ttyUSB3              0666   radio      radio
  7. /dev/ttyUSB4              0666   radio      radio
复制代码



回复

使用道具 举报

392

主题

2087

帖子

7514

积分

版主

Rank: 7Rank: 7Rank: 7

积分
7514
发表于 2020-7-31 09:21:24 | 显示全部楼层
赞一下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

在线客服
在线咨询
咨询热线
0755-26787502-8006/8016
扫一扫二维码
直接访问本站

QQ|Archiver|手机版|小黑屋|雨滴科技  

GMT+8, 2020-8-15 21:51 , Processed in 0.072710 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表