【发布时间】:2011-09-25 04:41:35
【问题描述】:
您好,我正在开发一个需要我运行一些 bash 代码的应用程序,有没有一种方法可以将脚本硬编码到我的应用程序中然后运行它?例如(这是一个非常简单的例子)
#!/system/bin/sh
#
if [ ! -f /sdcard/hello.txt ]
then
echo 'Hello World' >> /sdcard/hello.txt
else
echo 'Goodbye World' >> /sdcard/goodbye.txt
fi
我有以下方法来运行一行 bash 命令,但需要在多行上运行类似的东西。同样,上面的代码是一个非常简化的示例,我实际上正在做的事情必须通过脚本运行,而不能通过 java 来完成。我也想对其进行硬编码,我知道可以将脚本存储在手机上并使用以下命令运行它,但不希望脚本直接存在,而是将其硬编码在应用程序中。
public Boolean execCommand(String command)
{
try {
Runtime rt = Runtime.getRuntime();
Process process = rt.exec("su");
DataOutputStream os = new DataOutputStream(process.getOutputStream());
os.writeBytes(command + "\n");
os.flush();
os.writeBytes("exit\n");
os.flush();
process.waitFor();
} catch (IOException e) {
return false;
} catch (InterruptedException e) {
return false;
}
return true;
}
感谢您对我的问题的任何帮助
【问题讨论】: