2015-01-05 110 views
-1

我已经安装WAMP我的电脑上,并创建了位于该网址的PHP Web服务Android手机和仿真器无法访问WAMP的Web服务

http://localhost/WebService/?mode=get 

我使用的Android Studio和其上运行的项目我Nexus 5手机。开发计算机和我的手机都连接到同一个WiFi网络。

当我试图从应用程序调用该URL,我得到一个错误:

Caused by: java.net.ConnectException: failed to connect to /127.0.0.1 (port 80): connect failed: ECONNREFUSED (Connection refused) 

在我的清单我有上网权限。

如何从我的连接电话访问本地Web服务以进行开发/调试?

+0

的可能重复[如何浏览本地主机上Android设备?](http://stackoverflow.com/questions/3378501/how-to-browse-localhost-on-android-device) – cmorrissey

+1

你能够从仿真器浏览器访问url –

+0

有一个特殊的IP地址如果你想访问主机本地主机。那是10.0.2.2 – Rohit5k2

回答

0

从你的模拟器检查您的网址或从设备......如果你不能够访问它,找到正确的网址....

打开命令prompt->键入ipconfig->获取IPv4地址....像192.xx ...

enter image description here

所以你的URL是 “http://192.xx.xx.xx/WebService/?mode=get

透过Android模拟器访问本地主机上使用IPCONFIG中给出的IP地址。

+0

Downvoters你能解释为什么 –

+0

如果你的机器IP地址发生变化,你将不得不更改代码。 Android提供了一个特殊的IP地址,它是<10.0.2.2>这是用来访问主机,而不考虑主机的IP地址。所以没有使用所有这些额外的步骤。如果用户访问的设备不是模拟器,那么它会工作。 – Rohit5k2

+0

我一直在使用过去两年....你的意思是说我的机器IP地址永远不会改变?你试试这个方法如果它不起作用然后来告诉我们.. –

2

模拟器使用特殊的IP地址访问主机本地主机。使用此链接

http://10.0.2.2/WebService/?mode=get 

在某些情况下,您可能必须分配非默认端口。

+1

但是我不能访问这个URL,但是这可能是由于端口号不同造成的,我怎么才能知道要使用哪个端口? – andrewb

+0

你需要在你的本地服务器上设置 – Rohit5k2

0

这可能是最好使用

machine_name.local

作为主机名,因为如果你使用的是DHCP

您的服务器/计算机可以改变IP地址
相关问题