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

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

我错过了什么?


当前回答

在mac上,如果你的服务器是8080,在终端上运行这个命令

echo "
rdr pass inet proto tcp from any to any port 8080 -> 127.0.0.1 port 8080
" | sudo pfctl -ef -

其他回答

我个人不坚持在使用设备时使用本地主机,没有简单的解决方案。

只需启动您连接到本地主机的活动,在那里您可以使用模拟器。无论你从设备得到什么信息都可以轻松生成,并可以作为参数发送给活动。

简单。 首先,让你的android设备和电脑连接在同一个网络上,比如路由器 用windows+R打开命令提示符,搜索cmd,然后打开。在命令中输入ipconfig,获取ipv4地址。

注意:防火墙会阻止你的电脑通过网络访问,所以你需要关闭网络的防火墙,无论是公共的还是私有的。

如何关闭防火墙 打开控制面板>系统和安全> windows防火墙>在左侧窗格选择打开和关闭windows防火墙。>然后选择“关闭windows防火墙”(不推荐)

你完成了

然后打开你的移动设备,运行你的IP地址192.168.1.xxx


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

Done

localhost将出现在你的手机上

默认localhost的更简单方法是使用http://localhost:port。这也适用于笔记本电脑和安卓系统。

如果它不工作,然后在android设置您的手机的默认IP 127.0.0.1:端口:)

打开终端并输入:-

 hostname -i
 #127.0.0.1
 hostname -I
 #198.168.*.*

在你的ubuntu/Macbook中使用这个来获取你系统的ip地址。你的手机和系统应该在同一个网络中

ip addr | grep inet这将给你一个看起来像192.168.168.46的ip地址。在你的智能手机上使用这个。

希望这能有所帮助。