我正在设计一个应用程序来控制多区域音频放大器。为此,我必须创建一个套接字连接,到目前为止工作正常。我想做的是用户不必手动输入ip地址,我希望我的应用程序自动扫描网络,检查所有MAC地址将其匹配到NIC数据库,如果它与我的放大器的公司匹配,然后保存IP地址。这是可能的,如果是的如何?或者有更简单的方法吗?
答案 0 :(得分:7)
我为我的应用程序“网络发现”做了这样的:循环通过ip范围然后只需ping ip以获取mac地址,我通过解析/ proc / net / arp来获取。 可能有更好的方法,但它对我有用。
这是范围扫描: 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