android - 如何从我的 Android 设备访问我的本地主机?

标签 android

我可以使用 Android 模拟器访问我的笔记本电脑网络服务器,我使用的是 10.0.2.2:portno 效果很好。

但是当我连接我真正的 Android 手机时,手机浏览器无法连接到我笔记本电脑上的同一个网络服务器。手机使用 USB 数据线连接到笔记本电脑。如果我运行 adb devices 命令,我可以看到我的手机了。

我错过了什么?

最佳答案

USB 无法为移动设备提供网络。

如果您的桌面和手机都连接到同一个 WiFi(或任何其他本地网络),则使用路由器分配的桌面 IP 地址(不是 localhost127.0.0.1 )。

要找出您桌面的 IP 地址:

  • 在命令行中输入 ipconfig (Windows) 或 ifconfig (Unix)
    • 在 Linux 上,单行 ifconfig | grep "inet " | grep -v 127.0.0.1只会产生重要的东西
    • 有一个 bunch of suggestions关于如何在 Windows 上获得类似的输出
  • 会有一堆 IP
  • 尝试所有方法(除了前面提到的 localhost127.0.0.1 )

如果您的手机已连接到移动网络,那么事情会变得更加困难。

要么去硬核:

  • 首先找出您的路由器外部 IP 地址 (https://www.google.de/search?q=myip)
  • 然后,在路由器上,将某个端口转发到 <your desktop IP>:<server port number>
  • 最终使用外部 IP 地址和转发端口

否则使用类似 xip.iongrok .

注意:ifconfig命令已被弃用,因此默认情况下在 Debian Linux 上缺失,从 Debian stretch 开始。在 Debian Linux 上检查网络配置的新推荐替代方法是 ip 命令。例如,要使用 ip 命令显示网络配置,请运行以下命令:

ip address

上面的ip命令可以简写为:

ip a

如果您仍然喜欢使用 ifconfig作为日常系统管理例程的一部分,您可以轻松地将其安装为 net-tools 的一部分。包。

apt-get install net-tools

引用是here

关于android - 如何从我的 Android 设备访问我的本地主机?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4779963/

相关文章:

android - 如何在Android中设置提醒?

java - 如何从时区获取时区 ID

java - 用作按钮的 Android 选项卡

android - Gradle 无法与 'unable to find optional library' 同步

java - 如果 TextView 显示特定文本,则将可见性设置为 GONE

android - 在 Activity 开始之前访问它

安卓分享文字总是要求申请

android - 警告对话框可以在运行时更改android中的标题

android - 如何使图像的一部分透明?

Android 在现场崩溃 - 如何记录/读取崩溃时的事件和状态?