我可以使用Android模拟器访问我的笔记本电脑web服务器,我使用10.0.2.2:portno 工作得很好。
但当我连接真正的Android手机时,手机浏览器无法连接到我笔记本电脑上的同一个web服务器。手机和笔记本电脑通过USB线连接。如果我运行 adb devices命令,我可以看到我的手机。
我错过了什么?
我可以使用Android模拟器访问我的笔记本电脑web服务器,我使用10.0.2.2:portno 工作得很好。
但当我连接真正的Android手机时,手机浏览器无法连接到我笔记本电脑上的同一个web服务器。手机和笔记本电脑通过USB线连接。如果我运行 adb devices命令,我可以看到我的手机。
我错过了什么?
当前回答
在linux上使用ip addr而不是ifconfig,因为ifconfig已弃用多年,并且在最近的发行版中没有默认安装
其他回答
USB不为移动设备提供网络。
如果你的桌面和手机都连接到同一个WiFi(或任何其他本地网络),那么使用路由器分配的桌面IP地址(不是localhost,也不是127.0.0.1)。
要找出您的桌面的IP地址:
在命令行输入ipconfig (Windows)或ifconfig (Unix) 在Linux上,一行程序ifconfig | grep "inet " | grep -v 127.0.0.1将只产生重要的东西 有很多关于如何在Windows上有类似输出的建议 会有一大堆IP 尝试所有这些(除了前面提到的localhost和127.0.0.1)
如果你的手机连接到移动网络,那么事情就会变得更加困难。
要么走硬核路线:
首先找出你的路由器外部IP地址(https://www.google.de/search?q=myip) 然后,在路由器上转发一些端口到<您的桌面IP>:<服务器端口号> 最后使用外部IP地址和转发端口
否则使用类似xip的东西。IO或ngrok。
注意:ifconfig命令已经弃用,因此在Debian Linux上默认没有,从Debian扩展开始。在Debian Linux上检查网络配置的新的推荐替代方法是ip命令。例如,使用ip命令显示网络配置,执行如下命令:
ip address
以上ip命令可以缩写为:
ip a
如果您仍然喜欢使用ifconfig作为日常系统管理程序的一部分,您可以轻松地将其作为net-tools包的一部分安装。
apt-get install net-tools
参考资料在这里
简单。 首先,让你的android设备和电脑连接在同一个网络上,比如路由器 用windows+R打开命令提示符,搜索cmd,然后打开。在命令中输入ipconfig,获取ipv4地址。
注意:防火墙会阻止你的电脑通过网络访问,所以你需要关闭网络的防火墙,无论是公共的还是私有的。
如何关闭防火墙 打开控制面板>系统和安全> windows防火墙>在左侧窗格选择打开和关闭windows防火墙。>然后选择“关闭windows防火墙”(不推荐)
你完成了
然后打开你的移动设备,运行你的IP地址192.168.1.xxx
其实很简单。
打开你的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
Ngrok允许你把本地主机放到临时服务器上,设置非常简单。我在这里提供了一些可以在链接中找到的步骤:
从上面的链接下载ngrok压缩包 拉开拉链 在本地运行服务器并记录端口号 在终端中,进入ngrok所在的文件夹,输入ngrok http[端口号]
您将在终端中看到一个小仪表板,其中有一个指向本地主机的地址。将你的应用指向这个地址,然后构建到你的设备上。