请告诉我可以从My Android应用程序运行shell脚本文件。
并从脚本文件中读取数据。
如果有可能继续,请给我一些指导。
答案 0 :(得分:0)
您可以使用此代码段(来自Aaron C)
void execCommandLine(String command)
{
Runtime runtime = Runtime.getRuntime();
Process proc = null;
OutputStreamWriter osw = null;
try
{
proc = runtime.exec("su");
osw = new OutputStreamWriter(proc.getOutputStream());
osw.write(command);
osw.flush();
osw.close();
}
catch (IOException ex)
{
Log.e("execCommandLine()", "Command resulted in an IO Exception: " + command);
return;
}
finally
{
if (osw != null)
{
try
{
osw.close();
}
catch (IOException e){}
}
}
try
{
proc.waitFor();
}
catch (InterruptedException e){}
if (proc.exitValue() != 0)
{
Log.e("execCommandLine()", "Command returned error: " + command + "\n Exit code: " + proc.exitValue());
}
}
但我认为这需要root访问权。
您也可以尝试使用GScript
答案 1 :(得分:0)
我一直在使用它在我的Android应用程序中运行shell脚本。我还没弄明白该怎么做才能将输出指向我想要的地方。你不需要root,这就是我发帖的原因。
Process process = Runtime.getRuntime().exec("top -n 1");
//Get the output of top so that it can be read
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(process.getInputStream()));