我可以使用 Android 模拟器访问我的笔记本电脑网络服务器,我使用10.0.2.2:portno 得很好。
10.0.2.2:portno
但是当我连接我真正的安卓手机时,手机浏览器无法连接到我笔记本电脑上的同一个网络服务器。手机使用 USB 数据线连接到笔记本电脑。如果我运行 adb devices 命令,我可以看到我的手机。
我错过了什么?
USB 不为移动设备提供网络。
如果您的桌面和手机都连接到同一个 WiFi (或任何其他本地网络),则使用路由器分配的桌面 IP 地址(notlocalhost和 not 127.0.0.1)。
localhost
127.0.0.1
要找出您桌面的 IP 地址:
ipconfig
ifconfig
ifconfig | grep "inet " | grep -v 127.0.0.1
如果您的手机已连接到移动网络 ,那么事情会变得更加困难。
要么去铁杆:
<your desktop IP>:<server port number>
否则使用类似xip.io或ngrok的东西。
注意 :该ifconfig命令已被弃用,因此默认情况下在 Debian Linux 上缺失,从 Debian stretch 开始。在 Debian Linux 上检查网络配置的新推荐替代方法是 ip 命令。例如,要使用 ip 命令显示网络配置,请运行以下命令:
ip address
上面的ip命令可以简写为:
ip a
如果您仍然喜欢将其ifconfig用作日常系统管理例程的一部分,则可以轻松地将其安装为net-tools软件包的一部分。
net-tools
apt-get install net-tools
参考在这里