【发布时间】:2021-01-12 18:24:00
【问题描述】:
我有一个 Android 应用需要设备的真实 IP,而不是虚拟网络 IP。除非 Chromebook 在公共 IP 上,否则我不想要公共 IP,我只需要 LAN 的私有 IP,但现在我得到了一个虚拟 IP,我猜是 Android 的虚拟网络应用程序。
同时使用WifiManager 和NetworkInterface.getNetworkInterfaces() 我得到的只是虚拟IP。调用外部服务器是行不通的,因为这会让我获得公共 IP。
我知道过去有人问过这个问题,但我只是想看看是否有人找到了方法?
【问题讨论】:
-
不知道这个想法是否可行:鉴于在 ChromeOS Android apps run in a container and not a VM 上,您可能需要查看基于 NDK 的选项来获取私有 LAN ip 地址。
-
有趣的想法,我不知道从哪里开始,但感谢您的建议。
-
为什么需要真实IP地址?还有其他针对 Android 设计的网络解决方案,如果我们更好地了解应用程序的目标是什么,其他 API 之一可能更适合。
-
我需要两台设备相互通信,而辅助设备在网络方面的能力通常非常有限。所以通常用户需要告诉辅助设备 chromebook 的 ip 是什么,为此应用程序必须告诉用户给辅助设备什么 ip。
标签: android google-chrome-os chromebook