我正在为 Android 编写一个 wifi-direct 应用程序。我正在尝试与设备建立套接字连接。由于组所有者意图功能似乎不起作用(它只是随机分配)我必须找到一种将客户端 IP 地址传输到主机的方法。我知道的唯一地址是 WifiP2pManager 可以获取的组信息对象中的主机设备。我知道哪个设备是主机,哪个设备是客户端,因此我可以打开一个套接字以使连接到达或尝试连接到另一个。
如果“主机”设备是组所有者,我需要做的是找到一种方法来传输 Wifi P2P(Wifi Direct)客户端的设备 IP 地址。如果主机是组所有者,我无法连接到客户端上的套接字。这有点令人困惑,但这就是它的工作原理。
我已经看到了诸如从 ARP 表中获取 IP 地址之类的事情,但是 ARP 表似乎仅在几秒钟(如一分钟)后就自动清除了,并且在 ICS 上,因为 wifi 接口已禁用 Wifi direct 我什至没有查看 arp 表中的任何内容。
我觉得这应该很容易,但我不是一个大的 linux 用户,所以我不知道哪个文件可以保存网络接口配置。有没有办法获取网络接口的 IP 地址?或者至少是Wifi P2P接口?(注意:这不是wifi地址。它类似于tethering地址,只是它是Wifi Direct。WifiManager不返回这个)
谢谢,
Mgamerz