问题描述
- android 调用echo命令
-
问题描述:
进入adb shell 直接使用 echo 1 > /sys/class/leds/white:pd27:led3/brightness 可行
用以下程序进行命令调用,却不成功,white:pd27:led3这个节点的权限给到最高了,apk也获取了system权限 在AndroidManifest.xml中添加android:sharedUserId="android.uid.system"为何还是不成功,有大神能找出原因吗
Process process = null;
DataOutputStream dos = null;try { process = Runtime.getRuntime().exec("sh"); dos = new DataOutputStream(process.getOutputStream()); dos.writeBytes("echo 1 > /sys/class/leds/white:pd27:led3/brightness"); dos.flush(); try{ process.waitFor(); }catch (InterruptedException e){} dos.close(); } catch (IOException e) { e.printStackTrace(); }
解决方案
这个问题自己解决了,之前一直给的权限是灯的节点 chomd 777 .../led
之后给brighness权限就可以用apk点亮了,chmod 777 .../led/brightness
解决方案二:
少了
了,命令最后写一个
,相当于回车(只有
应该也ok)
另外建议再写入一个exit
再不行就是system用户权限不足,可以申请root权限
解决方案三:
echo 命令
linux下的echo命令
时间: 2024-10-28 17:35:21