在Linux java上将十六进制数据写入/ dev / ttyS1

时间:2017-03-13 06:28:12

标签: java android runtime.exec

我正在尝试从android java app中将一些十六进制数据写入/ dev / ttyS1,但没有任何成功。

最简单的方法应该是运行时exec命令,但它对我不起作用。

我试过了:

Process process = Runtime.getRuntime().exec("echo -n -e \\xb5\\x62\\x06\\x17\\x14\\x00\\x00\\x40\\x00\\x02\\x00\\x00\\x00\\x00\\x00\\x01\\x00\\x01\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x75\\x4f > /dev/ttyS1");

还有:

Process process = Runtime.getRuntime().exec("su");
DataOutputStream os = new DataOutputStream(process.getOutputStream());
os.writeBytes("echo -n -e \\xb5\\x62\\x06\\x17\\x14\\x00\\x00\\x40\\x00\\x02\\x00\\x00\\x00\\x00\\x00\\x01\\x00\\x01\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x75\\x4f > /dev/ttyS1\n");
os.flush();
os.writeBytes("exit\n");
os.flush();

没有任何成功。 adb shell中的相同命令当然也可以。

还有其他选项可以从Android应用程序向/ dev / ttyS1发送十六进制数据吗? 或者也许有人知道我的方式我做错了什么?

我也尝试了标记为问题How to make pipes work with Runtime.exec()?的答案的方法,但也没有任何运气。

0 个答案:

没有答案