![](/img/trans.png)
[英]Android: unable to read a file using bufferedReader whereas cat command run in adb shell works fine
[英]Run adb shell command using android code
echo 0 > /sys/class/leds/button-backlight/brightness
上面的命令通过adb shell可以很好地工作,但是当我尝试运行我的代码时没有任何效果,这是我的代码。
Process mSuProcess;
mSuProcess = Runtime.getRuntime().exec("su");
DataOutputStream mSuDataOutputStream = new DataOutputStream(mSuProcess.getOutputStream());
mSuDataOutputStream.writeBytes("echo 0 > /sys/class/leds/button-backlight/brightness \n");
mSuDataOutputStream.flush();
mSuDataOutputStream.close();
请帮助我。
如果您正在使用的设备没有植根,则可能无法正常工作。
Google原始su
二进制文件会检查UID
并且仅在由root
用户或shell
用户运行时才起作用。 这就是为什么当您从adb shell交互式运行命令时它起作用的原因。 为了从Java应用程序运行此代码,您需要使用修补的su
二进制文件-无需UID
检查。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.