Android应用程序无法从InputStreamReader显示输出,并且进程返回退出代码1。
创始人
2024-10-13 01:31:39
0

如果你在Android应用程序中使用ProcessBuilder执行命令,有时会发现没有任何输出显示在你的InputStream Reader中,甚至在你的进程完成之后也没有。这可能是因为你忘记了使用inheritIO()方法将子进程的输出和错误流继承到你的应用程序。

以下是解决该问题的示例代码:

try {
    ProcessBuilder processBuilder = new ProcessBuilder("ls", "-l");
    processBuilder.redirectErrorStream(true);
    Process process = processBuilder.start();
     
    // 继承子进程的输出流和错误流
    processBuilder.inheritIO();
     
    int exitCode = process.waitFor();
     
    Log.d(TAG, "Exit Code: " + exitCode);
} catch (IOException | InterruptedException e) {
    e.printStackTrace();
}

在上面的示例代码中,我们使用ProcessBuilder执行命令“ls -l”。在启动子进程之前,我们使用redirectErrorStream()方法将子进程的输出和错误流合并到一个流中。然后,我们使用inheritIO()方法将这个合并后的流继承到我们的应用程序的标准输出和错误流中。

通过这种方法,您应该能够读取并显示子进程的输出。如果你仍然无法读取输出,请确保子进程正在输出到标准输出流而不是错误流中。

相关内容

热门资讯

透视透视!德普之星怎么开辅助,... 透视透视!德普之星怎么开辅助,德扑圈有透视吗(透视)一贯是有挂(讲解有挂)-哔哩哔哩1、进入到德普之...
此事迅速冲上热搜!破解大菠萝的... 此事迅速冲上热搜!破解大菠萝的辅助器,新海贝之城拼十房间,项目教程(有挂细节)-哔哩哔哩1、让任何用...
透视教程!德普之星辅助工具如何... 透视教程!德普之星辅助工具如何打开,德普辅助器怎么用(透视)本来真的有挂(的确有挂)-哔哩哔哩1、德...
网友热议!新广西老友麻将开挂,... 网友热议!新广西老友麻将开挂,红龙poker辅助器免费观看,练习教程(有挂辅助)-哔哩哔哩1、任何红...
透视透视!德普软件,德普之星透... 透视透视!德普软件,德普之星透视(透视)其实真的是有挂(有挂秘籍)-哔哩哔哩1、德普之星透视破解器简...
目前来看!hhpkoer辅助器... 目前来看!hhpkoer辅助器,微乐自建房黑科技入口在哪,指引教程(真的有挂)-哔哩哔哩微乐自建房黑...
据公告内容!免费雀神挂件怎么安... 据公告内容!免费雀神挂件怎么安装,wepoker模拟器哪个好用,绝活教程(确实有挂)-哔哩哔哩1、免...
透视软件!德普之星辅助工具如何... 透视软件!德普之星辅助工具如何打开,德普之星透视(透视)原来真的是有挂(真的有挂)-哔哩哔哩1、这是...
事发当天!创思维激k看底牌辅助... 事发当天!创思维激k看底牌辅助软件,新星游辅助真的假的,总结教程(有挂细节)-哔哩哔哩1、首先打开创...
透视工具!德普之星透视辅助软件... 透视工具!德普之星透视辅助软件是真的吗,德普之星透视辅助软件(透视)果然有挂(详细教程)-哔哩哔哩1...