我正在尝试连接外部GSM调制解调器和nexus 5并使用Android RIL层发送AT命令。我正在使用Android 5.0 AOSP从谷歌源下载的nexus 5.
错误:尝试打开ttyACM0端口时权限被拒绝。 我通过更改权限但仍然是权限被拒绝错误来检查这一点。
我是否还需要更改为打开端口?
答案 0 :(得分:1)
您正在获得权限被拒绝,因为Android RIL对该设备没有相应的selinux(Security Enhanced Linux)权限。 由于RIL已经对 radio_device 上下文中的文件具有rw权限,如下所示和this链接。
allow rild radio_device:chr_file rw_file_perms;
因此,只需将设备文件的上下文更改为radio_device
,以便RIL具有相应的访问权限,方法是将下面的行添加到文件YOUR_BUILD_DIRECTORY/external/sepolicy/file_context
,并希望它可以正常工作。
/dev/ttyACM0 u:object_r:radio_device:s0