我在我的应用程序中创建了一个执行bash cmd的按钮。
这是我的字符串:
final String[] test = {"su","-c","echo test > /system/test.txt"};
这个cmd工作,实际上,我可以在/ system /上看到test.txt文件,里面有行测试。
我的问题是:当我按下exec的按钮时,cmd设备会使用字符串“echo test /system/text.txt”创建一个toast。 我猜这是由于“-c”,无论如何:
final String[] test = {"su","echo test > /system/test.txt"};
不起作用,并且:
final String[] test = {"su","-c","echo test > /system/test.txt >> /dev/null"};
也无法正常工作并创建一个显示“echo test /system/test.txt / dev / null”的toast
有什么方法可以避免这个“问题”吗?
此外,任何人都可以向我展示一个小功能,当我点击按钮执行它时,用旋转轮创建一个吐司?
谢谢!
答案 0 :(得分:-1)
su
手册中的摘录应该清除您关于-c
选项的问题:
-c, --command=COMMAND
pass a single COMMAND to the shell with -c
并且
final String[] test = {"su","-c","echo test > /system/test.txt >> /dev/null"};
无效,因为Android没有/dev/null
设备。要使其发挥作用,您需要在-c
之后选择su
并删除/dev/null
。您可以使用android API来删除此文件。