在真实设备上伪造GPS的步骤:
当我在Mac上打开终端并输入:
telnet 192.168.0.23 5554
geo fix 5.1218252 52.0930999
这很有效。
但是当我以编程方式执行此操作时:
UiDevice device = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation());
try {
String response = device.executeShellCommand("telnet 192.168.0.23 5554");
} catch (IOException e) {
e.printStackTrace();
}
应用程序立即崩溃,甚至没有给出错误消息。 minSdkVersion已设置为21。
答案 0 :(得分:1)
您telnet
命令位于本地计算机(Mac)中,而不在您的设备上。
当您调用executeShellCommand()
时,您需要运行设备上可用的命令而不是计算机。