为什么大公司开发网站,安徽seo报价,学校门户网站流程建设方案,汽车网络营销方式1、最近客户提了一个需求#xff0c;说要在user版本上面切分辨率#xff0c;默认屏幕分辨率是2.5 k 执行adb shell指令之后变成 4k 然后adb shell wm size可以查看
2、一开始我能想到就是在文件节点添加权限#xff0c;这里不管是mtk还是qcom#xff08;高通平台#xff…1、最近客户提了一个需求说要在user版本上面切分辨率默认屏幕分辨率是2.5 k 执行adb shell指令之后变成 4k 然后adb shell wm size可以查看
2、一开始我能想到就是在文件节点添加权限这里不管是mtk还是qcom高通平台或者其他的我首先能想到在device/目录下 init.xxx.rc文件中onboot添加对应文件节点权限
3、于是我怀着满怀的信心大哥这让我怎么玩?完全不给活路吗
4、而且执行完 之后都是下面这些日志 5、反正提示没有权限哪到底应该添加什么权限?根据某个网友回答你可能要拿userdebug去验证下 avc一些相关权限其实我也描述不是很清楚反正就是需要添加类似于android一样权限比如像android 读写权限 等等有需要了解可以自己百度去查下哈这里不再赘述。 6、于是我又编译一个userdebug版本 然后执行我动态添加 7、 于是在adb 下面执行 adb shell setprop debug.sys.display 3 /4 8、好了现在userdebug可以了于是我又自信满满的 编译user版本。然后于是又出现下面一幕 9、对于搞系统不久的我来说我真心看的不是很懂于是网上搜了下。然后请教了一下某aosp大佬于是他们这个就是selinux权限问题加上就ok顺着这个思路我去system/sepolicy/private/目前去找 这个里面有很多te文件比如nfcte,initte,于是我看着上面日志也有init然后。尝试在init.te文件中添加
allow init debugfs:file r file perms
allow init debugfs:file w file perms; 10、但是看起来不是很对劲于是在public也找到了对应的。加上在大佬鼓励下我开始编译然后今天同事到公司 早上远程验证一把结果如下。 11、大功告成 但是reboot那些因为目前是 Android8.1可能不支持通过system/bin目录去执行reboot重启指令考虑用代码去实现。
总结一下
1、对于linux文件节点读写权限了解
2、了解对于init.rcinit.qcom.rc,init.target.rc文件 等等 不知道可以自行百度一下
3、对于Selinux权限了解要看log 了解AVC相关一些selinux权限东西
4、要有耐心调试
5、不知道可以请教大佬们说不定思路打开了。格局也打开了。 转载请注明出处谢谢
Android高通8.1 Selinux问题_KdanMin的博客-CSDN博客