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

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

我错过了什么?


当前回答

首先,把你的手机和电脑连接到普通的wifi。

然后,以管理员身份运行打开命令提示符

给出ipconfig命令

哪个显示无线局域网ip

在电话中使用ip:服务器的端口访问

其他回答

使用connectify和xampp或等效,并在移动URL栏上输入ip地址访问

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

参考资料在这里

它非常简单,- GOTO命令行(Window + R [type cmd]) - type ipconfig,这将显示您PC的当前IP地址-将该IP地址写在您的Android手机浏览器上:80例如(http://192.168.x.x:80)

Done

localhost将出现在你的手机上

因为这是一个老问题,有一个新的方法来做这个非常非常简单。下载ADB Chrome扩展,然后按照这些说明:

https://developers.google.com/chrome-developer-tools/docs/remote-debugging

试着转到这个文件: C: \ wamp \ bin \ apache \ Apache2.2.11 \ conf \ httpd . conf

#   onlineoffline tag - don't remove
    Order Deny,Allow
    Allow from all // change it Deny
    Allow from 127.0.0.1

并将10.0.2.2修改为您的IP地址。