2010-11-14 124 views
3

我正在设计一个应用程序来控制多区域音频放大器。为此,我必须创建一个套接字连接,到目前为止工作正常。我想要做的是,而不是用户必须手动输入IP地址我想我的应用程序自动扫描网络,检查所有的MAC地址匹配到NIC数据库,如果它匹配我的放大器的公司,然后保存该IP地址。如果是的话,那可能如何?还是有更简单的方法来做到这一点?特定MAC地址扫描网络 - Android

回答

7

我为我的应用程序“网络发现”这样做了这样的事情:在ip范围内循环,然后ping ip以获取mac地址,我通过解析/ proc/net/arp来获取mac地址。 可能有更好的方法,但它适用于我。

这里是范围扫描: https://github.com/rorist/android-network-discovery/blob/master/src/info/lamatricexiste/network/DnsDiscovery.java 开始和结束都是ip addr只要。

这里是/ proc/net/arp解析: https://github.com/rorist/android-network-discovery/blob/master/src/info/lamatricexiste/network/Network/HardwareAddress.java#L60