如何在Android设备上浏览localhost?

时间:2010-07-31 14:27:56

标签: android android-emulator

我尝试在我的htc魔法上浏览localhost。我通过usb将我的设备与eclipse连接起来。浏览http://10.0.2.2我得到一个“页面不可用。我记得,几天前它有用了

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

任何想法? 问候

14 个答案:

答案 0 :(得分:46)

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

Reference for localhost

希望有所帮助! :)

答案 1 :(得分:32)

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

答案 2 :(得分:20)

访问模拟器上的localhost:10.0.2.2。但是,如果您拥有除Web服务器之外的其他内容(例如XMPP服务器),则可能并不总是有效。

假设您在同一个无线网络上......

  1. 找到你的本地ip(应该是192.168.1.x) - 转到命令行并输入'ipconfig'来获取它。其中x是服务器计算机的已分配本地IP。

  2. 使用您的本地IP为您的Android设备连接到您的本地主机。

  3. 它对我有用。

答案 3 :(得分:12)

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

请注意某些x的IPv4地址:(应为192.168.0.x)。将其用作服务器IP地址以及端口号,例如192.168.0.7:8080,在你的代码中。

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

答案 4 :(得分:8)

我需要在我的Android设备上看到localhost(三星S3),因为我正在开发一个Java Web应用程序。
到目前为止,最快最简单的方法是转到此链接并按照说明操作:https://developer.chrome.com/devtools/docs/remote-debugging

*注意:您必须使用Google Chrome。*
我对以上链接的总结:

  • 通过USB连接PC和手机。
  • 从设置
  • 打开手机的“开发人员选项”
  • 转到about:在PC浏览器中检查网址
  • 选中“发现USB设备”(如果您在网络应用程序中使用它们,则转发端口)
  • 将localhost必需链接复制/粘贴到浏览器中的文本字段,然后单击“打开”。

一块蛋糕

答案 5 :(得分:4)

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

在我的工作场所,我可以使用应用程序中我的机器的本地IP地址访问本地服务器,正如大多数其他答案所示。但在家里,由于某种原因,我无法做到这一点。在尝试了很多答案并花了很多时间之后,我遇到了https://ngrok.com。这很直截了当。只需从文件夹中下载它:

ngrok portnumber

(来自windows中的命令提示符)

./ngrok portnumber

(来自linux中的终端)

这将为您提供在localhost上运行该端口号的本地服务器的公共URL。您可以在应用中加入并使用该URL进行调试。

您可以安全地将本地Web服务器公开到Internet并捕获所有流量以进行详细检查。您可以与可能正在远程工作的同事开发人员共享URL,并可以调试App / Server交互。

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

答案 6 :(得分:3)

将上面的一些答案加上另外一个附加项目解决了我的问题。

  1. 如上所述,请关闭防火墙[添加特定规则,以便在成功连接后允许传入连接到端口]
  2. 如上所述通过ipconfig找到您的IP地址
  3. 验证您的网络服务器是否绑定到上面找到的IP地址而不仅仅是127.0.0.1。通过浏览到IP地址和端口在本地测试。例如。 192.168.1.113:8888。如果不是,请找到解决方案。例如。 https://groups.google.com/forum/?fromgroups=#!topic/google-appengine-java/z4rtqkKO2hg
  4. 现在在您的Android设备上测试一下。请注意,我还关闭了我的数据连接,并在我的Android上专门使用了wifi连接。

答案 7 :(得分:1)

如果您的localhost未在默认HTTP端口(即端口80)上运行,则需要将URL中的端口指定为与运行localhost的端口对应的端口。例如。如果你的localhost正在运行,比如端口85,你的网址应该是

http://10.0.2.2:85

答案 8 :(得分:0)

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

答案 9 :(得分:0)

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

我们可以免费在云端托管我们的本地Web服务器。在云上公开它我们得到一个不同的URL,我们可以使用它而不是localhost并从任何地方访问网络服务器。

该实用程序是ngrok https://ngrok.com/download 步骤进行:

  1. 注册
  2. 下载
  3. 解压缩文件并双击运行它,这将打开命令提示符
  4. 键入“ngrok.exe http 80”,不带引号,例如在端口80上运行的XAMPP apache服务器。
  5. 复制在cmd提示符上生成的新网址名称,例如如果它是这样的“fafb42f.ngrok.io”
  6. 网址如:http://localhost/php/test.php 应该像这样修改:http://fafb42f.ngrok.io/php/test.php

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

答案 10 :(得分:0)

Mac OSX用户

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

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

在移动浏览器上,键入[your IP address]:3000以访问localhost:3000

例如12.45.123.456:3000

答案 11 :(得分:0)

我用testproxy做到这一点。

npm install testproxy

testproxy http://10.0.2.2

然后,您获取可以在移动设备上访问的URL(和QR码)。它甚至可以与您仅通过输入开发计算机的IP无法访问的虚拟机一起使用。

答案 12 :(得分:0)

对于Mac用户:

我已经解决了一个下午,直到我意识到我使用的Xampp并不是真正的“ Xampp”,它是Xampp VM,它基于Linux虚拟机运行。这使其无法在本地主机上运行,​​而是在另一个IP上运行。我安装了真正的Xampp并在localhost上运行本地服务器,然后使用Mac的IP对其进行访问。

希望这会对某人有所帮助。

答案 13 :(得分:0)

我使用了ngrok,但是现在它需要注册,并且还具有连接请求限制。现在,我正在使用LocalTunnel,到目前为止,效果更好。