抄男友学习总结,核心问题是
学习博客https://blog.youkuaiyun.com/wds1181977/article/details/54967110得以知道缘由。
最近在做一个充电指示灯的需求,有一个Selinux权限的控制一直绕了好久才解决,解决记录如下:
驱动那边给我提供的操作LED灯的节点文件路径如下:
/sys/class/leds/mt6370_pmu_led1/brightness
我这边直接在LightServices里面去操作这个节点的时候,LED灯没有反应,查看mtklog之后发现有如下这个Log
08-06 05:20:03.509690 1037 1037 D LightsService: switch red led state = 1
08-06 05:20:03.507000 1037 1037 W system_server: type=1400 audit(0.0:274): avc: denied { write } for name="brightness" dev="sysfs" ino=24764 scontext=u:r:system_server:s0 tcontext=u:object_r:sysfs:s0 tclass=file permissive=0
08-06 05:20:03.509894 1037 1037 E LightsService: red : open /sys/devices/platform/11016000.i2c5/i2c-5/5-0034/mt6370_pmu_rgbled/leds/mt6370_pmu_led4/brightness failed
08-06 05:20:03.509964 1037 1037 D LightsService: can not write 1