我正在尝试批处理某些应用程序的安装,我想逐个应用程序进行安装。
我试图将adb命令响应放入我的Java程序中,但是我无法理解为什么我没有从df.corr()
中得到任何东西!
这是我的测试代码:
A B Medium High Medium-High
A 1.000000 0.490608 0.914322 -0.312309 -0.743459
B 0.490608 1.000000 0.343620 0.548589 -0.945367
Medium 0.914322 0.343620 1.000000 -0.577350 -0.577350
High -0.312309 0.548589 -0.577350 1.000000 -0.333333
Medium-High -0.743459 -0.945367 -0.577350 -0.333333 1.000000
我发现此答案无效,并且我也无法正确使用InputStream
。
我也尝试了answers from here的大多数,但是我测试的那些都不起作用。当我没有连接或安装失败时,我成功读取了错误,但在安装结束时,未读取提示消息import java.io.IOException;
import java.io.InputStream;
public class main_adbStreamTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
Process pro = Runtime.getRuntime().exec("platform-tools\\adb.exe -s " + args[0] + ":5555 install -r " + args[1]); // + " >> " + SBCWLogger.getFileHandlerName()
//add installation verification
InputStream is = pro.getInputStream();
int i = 0;
while( (i = is.read() ) != -1) {
System.out.print((char)i);
}
//verification done
} catch (IOException e) {
e.printStackTrace();
}
}
}
。这就是我想要的。
编辑:感谢Onix的回答,以下代码可以正常工作。
pro.getInputStream()
要获得著名的Success
,只需将流写入文件并读取最后一行。
答案 0 :(得分:0)
尝试一下
Process process = new ProcessBuilder("Full path to adb", "-s", args[0], "install", "-r", args[1]).start();
InputStream is = process.getInputStream();