我在公司网络内的远程虚拟机中运行了一个WebService。
通过在地址栏中输入网址(http://VMaddress/servicename/
),我可以在笔记本电脑上看到使用Chrome的JSON响应。
但是,我无法使用Android模拟器执行此操作。我的公司使用代理,我已经在模拟器启动窗口和Android应用程序本身内部定义了它。我可以连接到谷歌和东西,但我仍然无法连接到远程虚拟机。
所以我的问题是:
如何在Android模拟器中处理网络?我知道它为localhost定义了一个不同的ip,但我不应该至少在模拟器浏览器中看到JSON响应(因为我定义了允许我访问Internet的代理)?
模拟器不能在笔记本电脑的连接上运行吗?
我使用模拟器浏览器和Android应用程序获得403禁止响应。
我还尝试了另一个WebService URL(http://api.geonames.org/citiesJSON?north=44.1&south=-9.9&east=-22.4&west=55.2&lang=de&username=demo
),我得到了200个响应代码,因此我的应用程序正确访问了Internet。)
提前致谢
--- --- EDIT
我在笔记本电脑的连接设置中窥探并进入Chrome中的代理设置我在服务器所在的VM的代理中有异常。 删除该异常会给我带来与模拟器中相同的403禁止错误。
如何将相同的异常应用于模拟器?
答案 0 :(得分:1)
不知怎的,我设法“解决”了这个问题。
我不完全确定这是原因,但我跟着these steps。模拟器必须在没有可用网络的情况下启动。
我还使用以下选项在Launcher菜单中设置了我公司的DNS服务器:
-dns-server server1,server2
(在命令提示符中获取ipconfig /all
的值)。没有这些设置,它对我不起作用。
我通过在these steps之后创建新的APN在模拟器中手动配置代理。