从USB连接的Android移动设备访问PC的本地主机

sau*_*abh 68 android

我有一个通过USB连接到我的PC的Android设备(三星galaxy选项卡).

我想使用WebServices并在我的Android设备上运行一个位于我的PC的本地xampp服务器上的网页.

如果我的PC和Android设备都连接在同一个无线网络上,我就可以实现它.

但是,只使用USB连接就可以在没有任何无线连接的情况下访问localhost页面.

(PS:当我在模拟器上运行应用程序并使用ip 10.0.2.2访问我的PC上的localhost时,同样的情况也适用)

Zsi*_*nel 28

我终于解决了这个问题.我使用了三星Galaxy S和Froyo.下面的"端口"与您用于模拟器的端口(10.0.2.2:port)相同.我做了什么:

  1. 首先使用USB线连接您的真实设备(确保您可以在设备上上传应用程序)
  2. 从您连接的设备获取IP地址,该地址以192.168.xx:port开头
  3. 打开"网络和共享中心"
  4. 单击设备上的"本地连接",然后选择"详细信息"
  5. 将"IPv4地址"复制到您的应用并将其替换为: http://192.168.x.x:port/test.php
  6. 将您的应用(再次)上传到您的真实设备
  7. 转到属性并打开"USB tethering"
  8. 在设备上运行您的应用程序

它现在应该工作.

  • 应该注意的是,这是一个仅限 Windows 的解决方案。 (3认同)
  • 看来这个答案虽然有效,但假设Android设备和计算机都连接到无线接入点,这与作者试图实现的目的相反. (2认同)
  • 我同意@Jacob,这不能回答问题。问题本身表明他可以通过 wifi 连接。 (2认同)

Alf*_*run 25

Google在这里发布了针对此类问题的解决方案。

步骤:

  • 在启用了USB调试的情况下连接您的Android设备和您的开发机器
  • 在开发机器中打开Chrome,打开新标签,右键单击新的浏览器标签,然后单击检查
  • 单击右上角的三个点图标 三点,->更多工具,远程设备。
  • 查看屏幕底部,确保您的设备名称以绿色圆点显示在列表中。
  • 看下面的设置部分,检查端口转发标记
  • 添加规则。例如,如果您的python Web服务器在您的机器localhost:5000上运行,并且您想从设备端口3333访问它,则3333在左侧键入localhost:5000,然后键入,然后单击添加规则。
  • 瞧,现在您可以从设备访问Web服务器了。尝试打开新的浏览器标签,然后从您的设备访问http:// localhost:3333

  • _“此面板已被弃用,取而代之的是具有同等功能的 chrome://inspect/#devices 界面。”_ 因此,只需在 chrome 中粘贴 `chrome://inspect/#devices` 并跳到 *端口转发* 答案的步骤。 (8认同)

Joh*_*ohn 15

我已经阅读了很多论坛并试过播放应用程序,但直到现在才找到解决方案.

我认为我的情景与你的相似,但我会澄清以帮助别人.我有一个本地托管的网站和我的Android应用程序使用的Web服务.我需要让这个只用我的笔记本电脑进行演示,没有网络连接.

注意:使用我的iPhone作为wifi热点,并连接我的电脑和我的Android设备工作,但iPhone 4S连接速度慢,经常退出.

我的解决方案如下:

  • 拔掉PC上的网线并关闭wifi.
  • 在Android设备上关闭wifi
  • 通过USB将android连接到pc
  • 在Android菜单中打开"USB Tethering".(在网络 - >更多......->绑定和便携式热点")
  • 获取USB系绳指定的计算机IP.(打开命令提示符并键入"ipconfig",然后查找USB网络适配器分配的IP)
  • 使用找到的IP地址而不是localhost来打开PC上的浏览器进行测试.即http://192.168.1.1/myWebSite
  • 在android上打开浏览器并测试它的工作原理


Jos*_*osh 6

  1. 确保电脑上安装了adb手机上开启了USB调试,并且手机已经允许访问电脑。通过 USB 线将手机插入计算机,并确保它可见(它应该显示在 Bash 命令中)adb devices
  2. 在电脑的 Chrome 浏览器中,打开 chrome://inspect/#devices,点击“端口转发”按钮,勾选“启用端口转发”,并在电脑上添加您希望手机可以访问的端口(详细说明这里)。您需要保持打开运行 chrome://inspect/#devices 的选项卡。
  3. 在手机浏览器中,导航到 localhost:[port_number],它应该显示计算机上正在运行的任何内容。

这适用于 Windows 和 Ubuntu Linux,并且也应该适用于 Mac。


cag*_*cak 5

这是我的 Android 应用程序的一段代码:

此应用程序能够在服务器上运行的 servlet与插入 USB 可调试模式的 Android 设备因为该应用程序正在开发中)之间与 HTTP get-post 模型进行通信。

当服务器 Tomcat Apache 7 运行时(应用程序开发完成时),我还可以通过 Wi-Fi 运行应用程序

在此处输入图片说明

获取您的 IP 地址

  1. 转到命令提示符
  2. 类型 ipconfig
  3. 按回车

在列表中,IPv4 地址 是您的 IP。


Bin*_*sim 5

我在Windows电脑上做到了这一点,它完美无缺!

在您的手机中打开USB Tethering.在计算机的命令提示符下键入ipconfig,找到"ethernet adapter local area connection x"的ipv4(主要是第一个)现在转到您的移动浏览器,输入带有Web应用程序端口号的ipv4.例如: - 192.168.40.142:1342

它适用于这些简单的步骤!