我可以使用Android模拟器访问我的笔记本电脑web服务器,我使用10.0.2.2:portno 工作得很好。

但当我连接真正的Android手机时,手机浏览器无法连接到我笔记本电脑上的同一个web服务器。手机和笔记本电脑通过USB线连接。如果我运行 adb devices命令,我可以看到我的手机。

我错过了什么?


当前回答

我使用了这个过程:

在PC上安装Fiddler 按照这些优秀的说明设置PC和Android设备 只需在Android设备上打开浏览器,输入http://ipv4.fiddler访问本地主机

注意,这个过程需要你在每次会话开始和结束时更改Android设备上的WiFi设置。我发现这比我的Android设备更轻松。

其他回答

最后在Ubuntu中完成,我在localhost:8080上运行nodejs服务器

1)打开终端类型ifconfig 你将得到类似这样的IP: inet addr:192.168.43.17

2)现在简单地把url地址像这样: "192.168.43.17:8080"(8080端口来自本地主机端口号) 例如:“192.168.43.17:8080/fetch”

其实很简单。

打开你的Android手机/路由器的WiFi热点,连接你的 从笔记本电脑到手机 在本地主机启动服务器(我使用WAMP服务器的Windows) 现在打开命令提示符并输入

ipconfig

一旦你这样做了,你会看到如下内容:

Wireless LAN adapter Wireless Network Connection:
  Connection-specific DNS Suffix  . :
  Link-local IPv6 Address . . . . . : fe80::80bc:e378:19ab:e448%11
  IPv4 Address. . . . . . . . . . . : 192.168.43.76
  Subnet Mask . . . . . . . . . . . : 255.255.255.0
  Default Gateway . . . . . . . . . : 192.168.43.1

复制IPv4地址(在本例中为192.168.43.76) 在您的移动浏览器中,只需粘贴IPv4地址


注意:请将网络设置为“家庭网络”。将网络设置为家庭网络意味着您允许您的PC与同一网络上的其他设备共享内容。

如果你使用的是Windows 10,可以通过以下方法完成:

打开设置 去网络和互联网 在左侧菜单中选择WiFi 点击已连接WiFi的名称 配置网络的“网络配置文件”为“私有”

如果你遇到了问题,很可能是Windows防火墙的问题。

开放式控制面板 进入Windows防御防火墙 点击“允许一个应用程序或功能通过Windows防御防火墙” 检查应用程序是否启用了专用网络(应该有一个勾号) 如果未启用,请轻按“更改设置”,然后勾选应用程序“私有”下的复选框

如果你在Linux上运行 这对我很有用

sudo iptables -F

在Windows PC上,您可能不需要做任何其他事情,只需使用“ipconfig”命令查找您的IPv4地址。

第一步:用USB线连接你的手机和电脑。 第二步:使用命令'ipconfig'找到你的IPv4地址(路由器的外部IP),例如192.168.1.5。 步骤3:只需从手机浏览器中访问“192.168.1.5:8080”。真的有用!

其他环境细节: Windows 7,谷歌Nexus 4 (4.2.2), Tomcat服务器,Grails应用程序。

你还应该确保你在AndroidManifest文件中有访问internet的权限:

<uses-permission android:name="android.permission.INTERNET"/>

使用netconfig xml并在manifest.xml中分配它是最好的解决方法。这将绕过android默认的https限制。