我建立了一些测试,我的测试部门不知道如何使用终端。Uiautomator 测试是.jar
文件,因此必须通过终端运行。因此,为了方便起见,我想为他们制作一个应用程序,其中包含一个列表中的测试以供选择执行。这可能吗?我的研究使我相信这些设备需要植根。如果是这样,我将无法做到。那么有没有解决方法呢?这是我尝试过的:
Runtime rt = Runtime.getRuntime();
try {
Process process = rt.exec("su");
DataOutputStream os = new DataOutputStream(process.getOutputStream());
os.writeBytes("uiautomator runtest test.jar -c ui.test.getData\n");
os.flush();
os.writeBytes("exit\n");
os.flush();
process.waitFor();
} catch (IOException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
此代码将产生:
java.io.IOException: Error running exec(). Command: [su] Working Directory: null Environment: null
请帮助我解决这个问题。谢谢!