【发布时间】:2012-11-28 11:04:44
【问题描述】:
我正在寻找如何将 Android 模拟器端口从模拟器转发到可公开访问的端口。我已将端口转发到主机本地环回接口上的端口,但我希望该端口可通过网络访问。这是尝试从远程构建服务器在模拟器中运行一些自动化测试的一部分。我目前无法从另一台机器访问该端口,只能从 localhost 接口连接。即使尝试连接机器本身,如果使用机器公共名称,端口也无法访问。
这可能是模拟器的设计目的不是为了在公共接口上公开端口。在这种情况下,我可能会看看是否可以使用某种从公共接口到环回接口的 O/S 级端口转发来解决问题,如果这最终是唯一的方法。
【问题讨论】:
-
我曾尝试使用 socat 进行一些快速而肮脏的端口转发。这在一定程度上奏效了。我正在尝试连接到 Android Selenium WebDriver 应用程序。我可以成功地在浏览器中看到状态页面,但是当我尝试实际运行我的 Selenium 测试时,连接失败。当我尝试指向 Selenium WebDriver 的集线器时,我遇到了类似的错误,即 /wd/hub 出现错误。也许网络驱动器使用了一些更复杂的 TCP/IP 交互,Socat 更难支持。
标签: android android-emulator portforwarding