尝试在远程adb服务器上运行gradle测试。ADB_SERVER_SOCKET=tcp:host:port
和ADB_DEVICE=emulator-5554
适用于adb,但不适用于gradle。
看起来ANDROID_ADB_SERVER_PORT
适用于gradle,但是我没有找到设置adb服务器主机的方法。
最佳答案
我可以从Android Studio源代码看出来,它不支持读取主机地址。它是硬编码的:
/**
* Instantiates sSocketAddr with the address of the host's adb process.
*/
private static void initAdbSocketAddr() {
try {
sAdbServerPort = getAdbServerPort();
sHostAddr = InetAddress.getByName(DEFAULT_ADB_HOST);
sSocketAddr = new InetSocketAddress(sHostAddr, sAdbServerPort);
} catch (UnknownHostException e) {
// localhost should always be known.
}
}
Adb读取ANDROID_ADB_SERVER_ADDRESS,因此也许可以扩展Android Studio以使用此env变量。
目前,一种解决方法是使用iptables将流量从127.0.0.1:5037重新路由到您想要的任何流量,请参见answer here。
关于android - 在远程adb服务器上运行测试,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55244280/