如何在Android设备上浏览本地主机?

如何在Android设备上浏览本地主机?,android,android-emulator,Android,Android Emulator,我尝试在我的HTC Magic上浏览localhost。我已通过USB将我的设备与Eclipse连接。浏览时,我会看到“页面不可用”。我记得,几天前它还管用 但是在模拟器上,我可以浏览localhost 有什么想法吗?我使用我的本地ip,即192.168.0.1,它可以工作。访问emulator上的本地主机:10.0.2.2。但是,这可能并不总是有效的,例如,如果您有web服务器以外的东西,比如XMPP服务器 假设你在同一个无线网络上 查找您的本地ip(应该是192.168.1.x)-转到命令行

我尝试在我的HTC Magic上浏览localhost。我已通过USB将我的设备与Eclipse连接。浏览时,我会看到“页面不可用”。我记得,几天前它还管用

但是在模拟器上,我可以浏览localhost


有什么想法吗?

我使用我的本地ip,即192.168.0.1,它可以工作。

访问emulator上的本地主机:10.0.2.2。但是,这可能并不总是有效的,例如,如果您有web服务器以外的东西,比如XMPP服务器

假设你在同一个无线网络上

  • 查找您的本地ip(应该是192.168.1.x)-转到命令行并键入“ipconfig”以获取此信息。其中x是服务器机器的分配本地ip

  • 使用android设备的本地ip连接到本地主机


  • 这对我很有用。

    更容易检查的方法是在emulator类型为10.0.2.2的浏览器中,而不是在localhost中


    希望有帮助!:)

    如果本地主机未在默认HTTP端口(即端口80)上运行,则需要在url中指定与本地主机运行的端口对应的端口。例如,如果您的本地主机运行在端口85上,则您的url应为

    http://10.0.2.2:85
    

    如果要通过无线网络从Android设备访问PC上运行的服务器,请首先在PC上运行命令ipconfig(使用run(Windows徽标+R)、cmd、ipconfig)

    注意IPv4地址:(应该是192.168.0.x)对于某些x。将其与代码中的端口号(例如192.168.0.7:8080)一起用作服务器IP地址


    然后,您的Android设备将通过无线网络路由器访问服务器

    如果您的防火墙已打开,请将其关闭,并使用IPv4在实际设备中测试您的应用程序,然后测试您的应用程序。

    将上面的几个答案与另一个附加项结合起来,为我解决了问题

  • 如上所述,关闭防火墙[添加一条特定规则,允许成功连接后的传入连接到端口]
  • 如上所述,通过ipconfig查找您的IP地址
  • 验证您的Web服务器是否绑定到上面找到的ip地址,而不仅仅是127.0.0.1。通过浏览ip地址和端口在本地进行测试。例如192.168.1.113:8888。如果不是,找到解决方案。例如
  • 现在在你的Android设备上测试一下。请注意,我还关闭了数据连接,并在Android上专门使用了wifi连接

  • 您可以获取在localhost上的特定端口上运行的服务器的公共URL

    在我的工作场所,我可以使用应用程序中我机器的本地IP地址访问本地服务器,正如大多数其他答案所建议的那样。但在家里,由于某种原因,我没能做到这一点。在尝试了很多答案并花了很多时间之后,我遇到了。这很直截了当。只需从文件夹中下载即可执行以下操作:

    ngrok portnumber
    
    (从windows中的命令提示符)

    (来自linux中的终端)

    这将为运行在本地主机上该端口号上的本地服务器提供一个公共URL。您可以在应用程序中包含并使用该URL进行调试

    您可以将本地web服务器安全地公开到internet,并捕获所有流量以进行详细检查。您还可以与您的同事开发人员共享URL,他们可能正在远程工作,并且可以调试应用程序/服务器交互


    希望有一天这能节省一些人的时间。

    在开发Java Web应用程序时,我还需要在android设备(三星S3)上查看localhost。
    到目前为止,最快、最简单的方法是转到此链接并按照说明操作:

    *注意:您必须使用谷歌浏览器。*
    我对上述链接的总结:

    • 通过USB连接PC和手机
    • 从设置中打开手机的“开发者选项”
    • 转到关于:检查电脑浏览器中的URL
    • 选中“查找USB设备”(如果您在web应用程序中使用这些设备,请转发端口)
    • 将localhost必需的链接复制/粘贴到浏览器中的文本字段,然后单击“打开”。


    小菜一碟

    我也有类似的问题,但我无法使用静态ip地址或更改防火墙设置来解决它。我发现了一个有用的实用程序,可以在一分钟内配置

    我们可以免费在云上托管本地web服务器。在云上公开它时,我们会得到一个不同的URL,我们可以使用它来代替localhost并从任何地方访问Web服务器

    实用程序是ngrok 步骤:

  • 报名
  • 下载
  • 提取文件并双击以运行它,这将打开命令提示符
  • 键入“ngrok.exe http 80”,不带引号,以承载例如在端口80上运行的XAMPP apache服务器
  • 复制cmd提示符上生成的新url名称,例如,如果是“fafb42f.ngrok.io”
  • 类似URL: 应该这样修改:


    现在可以通过手机访问此URL。

    Mac OSX用户

    如果您的手机和笔记本电脑位于同一wifi上:

    转到
    System Preferences>Networ
    k获取您的IP地址

    在移动浏览器上,键入
    [您的IP地址]:3000
    以访问
    localhost:3000


    e、 g.
    12.45.123.456:3000

    我使用testproxy来实现这一点

    npm install testproxy
    
    testproxy http://10.0.2.2
    
    然后,您将获得可以在移动设备上访问的url(和二维码)。它甚至适用于仅输入开发机器的IP就无法访问的虚拟机。

    对于mac用户:

    我研究这个问题已经一个下午了,直到我意识到我使用的Xampp不是真正的“Xampp”,而是基于Linux虚拟机自行运行的Xampp虚拟机。这使得它不能在本地主机上运行,而是在另一个IP上运行。我安装了真正的Xampp,在localhost上运行本地服务器,然后用mac的IP访问它


    希望这能对别人有所帮助。

    我以前用过ngrok但现在它
    npm install testproxy
    
    testproxy http://10.0.2.2