我正在寻找一种方式来获得两个MAC地址和当前连接的WiFi网络在我的项目的SSID。 我用托尼百万的可达性来决定当用户连接到WiFi网络或不并测试Kenial的NICInfo才发现,它仅提供了iPhone的WiFi MAC地址。 虽然这两个项目有自己的方式帮助很大,他们没有把工作做好。 我想知道如果有一个公共的API(对某些苹果应用程序审批)或一些后门来实现这一目标。
Answer 1:
这涉及到几个不同的事情:
获取SSID - 这是一个独立的MAC地址问题。 为此,检查这个苏答案: iPhone获取SSID没有私人图书馆 。 我不知道什么是礼仪是从其他的答案关于重新发布代码,所以我就联系起来。
获取MAC地址-因为大多数网络的第3层(即所谓,谁也能猜到,网络层-运行http://en.wikipedia.org/wiki/OSI_model )和MAC地址是在第2层(数据链路层),你首先需要获得WiFi接口的网关的IP地址。 只是一个侧面说明-这个问题应表述为“我如何获得当前连接的无线网络的SSID和WiFi路由器/网关的MAC地址”。 Anywho,以获得网关地址,请参阅本SO回答: 如何获得iPhone上的WIFI网关地址?
一旦你的,你需要将其转换为使用ARP(地址解析协议,这是所有网络使用将IP地址转换为MAC地址的协议),MAC地址。 网络接口不通过IP通信,它们通过MAC沟通,所以实际上发生无处不在,所有的时间。 这其实很容易地访问在PC / Mac上的ARP表。 对于iOS,我发现这个苏答案将IP地址转换为MAC地址: 获取有关iPhone / iPad的ARP表
文章来源: Is it possible to get the SSID & MAC Address of Currently connected WiFi Network in an App