executeShellCommand不起作用,也不会返回telnet命令的错误

时间:2016-08-28 19:00:05

标签: android android-testing uiautomator android-uiautomator

在真实设备上伪造GPS的步骤:

  1. 安装MockGeoFix并点击"开始"
  2. 当我在Mac上打开终端并输入:

     telnet 192.168.0.23 5554
     geo fix 5.1218252 52.0930999
    
  3. 这很有效。

    但是当我以编程方式执行此操作时:

    UiDevice device = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation());
        try {
            String response = device.executeShellCommand("telnet 192.168.0.23 5554");
        } catch (IOException e) {
            e.printStackTrace();
        }
    

    应用程序立即崩溃,甚至没有给出错误消息。 minSdkVersion已设置为21。

1 个答案:

答案 0 :(得分:1)

telnet命令位于本地计算机(Mac)中,而不在您的设备上。 当您调用executeShellCommand()时,您需要运行设备上可用的命令而不是计算机。