~~ 最近想了做一个关于手机屏幕的相关操作,第一步卡在open /dev/graphics/fb0的问题上,开始以为在代码走一遍就过了,想想这么顺利的事情坑我两三个晚上的时间,后经高手提醒了下,总算找到了解决办法
各种错误如下:
第一步:在open("/dev/graphics/fb0", O_RDWR) 出现的“cannot open fb0"。。这个经查明是我Runtime.getRuntime().exec("chmod 777 /dev/graphics/fb0");权限没有修改成功。
第二步:就通过cmd的命令窗口输入adb shell ,到/dev/graphics/目录下输入ll命令查看fb0的权限,发现是-rw-r----- 即640权限,对其他用户不能使用读写。
于是。可以再根目录(就是进入adb shell的目录下 输入su 回车--- 后面的标记符会从$ 变成# 就是成功在root的模式下了,
最后,输入chmod 777 /dev/graphics/fb0 成功执行-这个时候可以到fb)目录下发现成功了,所以在代码里的执行修改命令就按上面说说
先执行su ---- 再执行chmod命令就可以成功修改。。
如果出现unkown id:chmod 或是root,请看是否是root模式下,如果进步了root模式下,请检查手机是否root过,或是完全root