我可以使用Android模拟器访问我的笔记本电脑web服务器,我使用10.0.2.2:portno 工作得很好。
但当我连接真正的Android手机时,手机浏览器无法连接到我笔记本电脑上的同一个web服务器。手机和笔记本电脑通过USB线连接。如果我运行 adb devices命令,我可以看到我的手机。
我错过了什么?
我可以使用Android模拟器访问我的笔记本电脑web服务器,我使用10.0.2.2:portno 工作得很好。
但当我连接真正的Android手机时,手机浏览器无法连接到我笔记本电脑上的同一个web服务器。手机和笔记本电脑通过USB线连接。如果我运行 adb devices命令,我可以看到我的手机。
我错过了什么?
当前回答
我使用了这个过程:
在PC上安装Fiddler 按照这些优秀的说明设置PC和Android设备 只需在Android设备上打开浏览器,输入http://ipv4.fiddler访问本地主机
注意,这个过程需要你在每次会话开始和结束时更改Android设备上的WiFi设置。我发现这比我的Android设备更轻松。
其他回答
在linux上使用ip addr而不是ifconfig,因为ifconfig已弃用多年,并且在最近的发行版中没有默认安装
虽然有一个答案已经被接受,但这对我来说很管用:
Make sure both your computer and android device are on same network. get your computer's ip address. (in case of mac type ifconfig inside terminal and look for en0/en1 -> inet it should be something like 19*.16*.1.4.) (on windows, use `ipconfig) Open your mobile settings and go to network-> long press your wifi network-> modify network -> scroll down to advanced options -> chose proxy manual and in proxy hostname type your address i.e. 19*.16*.1.4 inside port enter your port. and save it. search for what is my ip in google chrome, and get your ip, lets say it is 1**.1**.15*.2** try accessing 1**.1**.15*.2**:port/ from your mobile device.
事情就是这么简单。
以上的方法对我不起作用。Mac是这样的:
在终端:
ifconfig
然后把inet后面的数字放到手机浏览器里:
使用netconfig xml并在manifest.xml中分配它是最好的解决方法。这将绕过android默认的https限制。
“Chrome for Android的端口转发让你更容易在手机上测试你的开发站点。它的工作原理是在移动设备上创建一个监听TCP端口,该端口映射到开发机器上的特定TCP端口。这些端口之间的流量通过USB传输,因此连接不依赖于你的网络配置。”
更多详情请访问:https://developer.chrome.com/devtools/docs/remote-debugging#port-forwarding