Java exec()不在android上运行busybox命令

Java exec()不在android上运行busybox命令,java,android,exec,busybox,Java,Android,Exec,Busybox,我想通过android的java程序运行一些shell命令。应用程序只接收一个命令,在shell上执行它并返回结果 我用了这个: 进程p=Runtime.getRuntime().exec(in); p、 waitFor() BufferedReader=新的BufferedReader(新的InputStreamReader(p.getInputStream()) 字符串行=reader.readLine() 输出=行 while(line!=null){ line=reader.readLi

我想通过android的java程序运行一些shell命令。应用程序只接收一个命令,在shell上执行它并返回结果

我用了这个:

进程p=Runtime.getRuntime().exec(in); p、 waitFor()

BufferedReader=新的BufferedReader(新的InputStreamReader(p.getInputStream())

字符串行=reader.readLine()

输出=行

while(line!=null){

line=reader.readLine()

}

“in”是来自文本框的输入

1> 我注意到,作为android一部分的大多数命令都适用于上述语句。但我安装busybox也是为了获取其他linux命令。但这些命令都没有运行。每次它只返回一个空结果。我在/system/xbin和/system/bin中安装了busybox(在以读/写方式重新安装/system分区之后)

2> 其次,如果我在一个特定的位置(如ls/sdcard)上执行ls,它将使用/sdcard作为命令。但是ls-l是有效的(以防你觉得空格会引起问题)


请用一个工作命令帮助我解决

中的
的内容是什么?某些busybox的内容中有哪些不起作用?你有一些非工作执行的日志吗?对于非工作执行-W/InputManagerService(61):窗口已经聚焦,忽略焦点增益:com.android.internal.view.IInputMethodClient$Stub$Proxy@406f2d28in“将获取任何输入的命令。例如,如果我输入ls,in=“ls”。这将执行。您所说的busybox的内容是什么意思?
   output = output +"\n"+ line;
   //System.out.println(line);