我想调试我的Android应用程序,我使用USB线将Android设备连接到我的PC。在我的应用程序中有一个用于连接localhost的按钮,ip for localhost是10.0.2.2
,端口是8080
,我已经读过,在移动设备上调试时,ip 10.0.2.2
是localhost对于Android设备,而不是我的电脑,那么我应该对ip而不是10.0.2.2
进行哪些更改?还是我必须做出另一个改变?
在这种情况下,我的Android设备是sony ericsson xperia arc s
。
答案 0 :(得分:20)
Google已在Chrome 29及更高版本中添加支持,以使用反向端口转发在Chrome for Android上访问本地开发计算机上的网站通过USB连接线。可以在以下URL找到安装说明:
自桌面版Chrome 30反向端口转发不再是Chrome中的实验性功能。可以通过在PC的地址栏中键入about:inspect
,然后单击“启用端口转发”复选框并单击窗口右上角的“配置端口转发”按钮来访问它。
完成后,通过USB连接移动设备。将移动设备上的Chrome打开到localhost:8000
(或您在本地服务器上配置的任何端口)。
反向端口转发功能可确保您的Android设备现在可以看到您的PC localhost
。
答案 1 :(得分:14)
10.0.2.2 是您的系统(pc)的本地主机地址(仅限模拟器)。实际上android并没有在url中识别 localhost 。所以 10.0.2.2 就是这个意思。另外对于Android设备,环回地址是 127.0.0.1 。
你的10.0.2.2的网址是正确的。您也可以使用系统的静态IP 。
只需检查
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
在应用程序的清单文件中。
修改强>
您正在使用端口8080,请尝试使用主机上的 adb命令。
adb forward tcp:8080 tcp:8080
另外请详细说明“我想在我的手机上调试我的应用程序”。
注意:强>
如果您要在真实设备上进行测试,请使用系统(PC)的网络IP 。
答案 2 :(得分:5)
为此您需要在xampp服务器上进行一些更改...为系统分配1个静态IP地址,然后您需要将xampp服务器置于在线模式。之后,您可以在Android应用程序中使用该IP地址而不是10.0.2.2。对我来说工作正常,因为我在我的android应用程序中使用localhost。
答案 3 :(得分:3)
您可以通过Wi-Fi共享Mac的互联网连接。然后,您的Android应用程序可以通过Wi-Fi连接到Mac上运行的Servlet。步骤是:
答案 4 :(得分:0)
我认为您有两种选择
当您使用真正的android设备时,第一个正在使用10.0.2.3。它对我有用。
您的第二选择是从您的PC创建热点,并将您的android设备连接到该热点。
使用cmd类型“ ipconfig”查找IP地址,将localhost替换为IP地址。
谢谢。