【问题标题】:Android emulator cannot access the network available on my workstationAndroid 模拟器无法访问我的工作站上可用的网络
【发布时间】:2013-08-13 19:01:45
【问题描述】:

我在 Ubuntu 13.04 上运行我的 android 模拟器。我开发了一个应用程序,它需要访问与我自己的工作站在同一网络上的另一台机器上的 http 服务。

我知道模拟器为自己运行一个虚拟路由器/防火墙,网络地址空间为 10.0.2/24。另外,我知道 10.0.2.2 是我的主机环回接口 (127.0.0.1) 的特殊别名。

每当我设置一个不是我自己的目标地址(但在同一网络上)时,我的应用程序无法建立连接。我自己机器上的服务只能使用 10.0.2.2 访问。

换句话说,如何让模拟器访问我工作站上可用的网络?例如,我的 IP 是 192.168.1.2,我想访问 192.168.1.3 上的服务。

顺便说一句,我没有安装防火墙。

【问题讨论】:

  • 我知道我可以设置代理。但是在这种情况下,我们在没有指定任何代理的情况下在 windows 机器上尝试了确切的过程,并且 android 应用程序能够访问其他工作站。不知何故,在 Windows 工作站上,模拟器知道如何与该机器上的网络进行通信。这在 Ubuntu 工作站上不会发生。
  • 你可以使用其他应用程序在你的模拟器中设置代理来帮助模拟器设置代理和端口吗?
  • 我没有关注你的问题。你能说得更具体一点吗?
  • 我的意思是,市场上有代理设置应用程序。您可以用于临时解决方案。

标签: android networking android-emulator


【解决方案1】:

在我的机器上,我有 CNTLM 以便通过 Microsoft 代理服务器进行身份验证。在 /etc/cntlm.conf 的“无代理”部分中,我没有输入我想与之通信的机器地址。结果,所有请求都通过 CNTLM 到达代理服务器,并且由于网络 DNS 和代理服务器上的一些错误配置,地址无法解析。一旦我输入了我想要通信的所有机器的地址(在 cntlm.conf 的“无代理”部分),模拟器就可以直接连接到我网络上的远程机器。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-11-26
    • 2021-08-31
    • 1970-01-01
    • 2012-05-10
    • 1970-01-01
    • 2018-09-28
    • 2017-10-10
    • 2016-08-05
    相关资源
    最近更新 更多