2011-11-30 65 views
7

模拟器可以访问的,而不是10.0.2.2网络服务fromlocal主机,但我真正的设备无法虽然我使用LAN IP地址(192.168.xx.yyy)访问本地主机。当然,我的android手机被adb认可,它通过USB端口连接我的笔记本电脑。无法从Android设备

我已经在读计算器一些类似的问题,但仍然不知道如何从一个真正的Android手机访问web服务。这个问题的答案How can I access my localhost from my Android device?我很有用,但我并不真正理解这个答案。

任何人都可以帮助我吗?谢谢!

+0

试试这个:http://stackoverflow.com/a/17603378/1600061 –

+0

虽然我知道这是晚了,但对于有这样的问题的新人,请参阅 - > 192.168.1.yyy我得到了同样的问题因为192.168.0.yyy是浏览器和192.168.1.yyy移动设备在我的情况下,解决了我的一切。 请联系您的系统管理员或询问一些高级程序员。享受编程! – SameerKhan1406

回答

-2

您是否尝试过使用连接到局域网WiFi路由器?然后你只需要使用你的手机连接到无线网络,你应该能够访问(192.168.xx.yyy)

+0

我已经试过了。我拔掉了USB电缆,并将移动设备连接到与笔记本电脑相同的局域网(现在我的移动设备和笔记本电脑具有相同的IP),但我仍拒绝从移动设备访问Web服务。 – Wayne

+0

您可以从另一台机器访问Web服务吗?你需要提一个端口号吗?防火墙是否阻止访问Web服务? – rfsk2010

+0

同一局域网中的不同机器不能。我不知道为什么吧 – Wayne

7

也可能是Web服务器侦听的环回接口上而不是在网络接口上。这意味着127.0.0.1localhost上的匹配将会起作用,但192.168.xxx.xxx不会(无论是来自本地主机,LAN还是WAN)。

要确定服务器正在侦听哪个接口,请查看here以获取有关侦听端口的信息(我使用的是lsof -Pan -i tcp -i udp)。然后在列表中查找您的服务器进程。对于lsof命令,如果对于端口8888,您看到类似TCP *:8888 (LISTEN)的东西,那么您的服务器正在侦听所有接口。但是如果你看到类似TCP [::127.0.0.1]:8888 (LISTEN)的东西,那么你已经发现了你的问题!

下一步解决你的问题是设置服务器的运行配置监听所有接口。我不知道你在使用什么服务器,但是如果你可以指定一个IP地址,那么你可能想尝试0.0.0.0。通常,您可以在可以指定侦听端口的位置附近执行此操作。因此,如果你有这样的配置:

--port 8888

这时可以尝试:

--port 8888 --address 0.0.0.0

0

在我看来,下面的点是开发者社区

我更重要我不是网络专家;像我一样,许多开发者可能在那里。

在httpd.conf中更改为0.0.0.0:80非常重要。

在正常(默认)设置,端口8888抛出WAMPSERVER错误(甚至在Windows浏览器)。这就是为什么我解释了8888端口出错的确切环境。

有关哪些配置会引发错误以及哪些配置成功运行的特定信息更为重要。