Mac OS X: 如何获取所有可用WiFi网络的MAC地址?

3
我需要获取由WIFI模块发现的所有WIFI网络的MAC地址。收集完后,我需要将它们与另一个静态MAC地址进行比较,该地址保存在应用程序中。 我的目标是只允许在路由器附近使用该应用程序。
有没有可能做到这一点?并且非常重要的是,要遵循苹果的规定,因为我想在App Store发布该应用程序。 请帮助我! 提前致谢!

这里已经有一个相关的问题被提出:https://dev59.com/ImXWa4cB1Zd3GeqPIgG_?rq=1 - wtl
1个回答

1
#import <CoreWLAN/CoreWLAN.h>

 CWInterface *currentInterface = [CWInterface interface];
 NSArray *networks = [[currentInterface scanForNetworksWithName:nil error:nil] allObjects];
for (CWNetwork *network in networks) {
      NSLog ( @"SSID: %@, BSSID: %@.\n", [network ssid],[network bssid] ,[network rssiValue]);
}

如您所见:http://www.smipple.net/snippet/morph/List%20all%20available%20WiFi-Acess%20points%20with%20SSID%20and%20BSSID%20under%20OS%20X

通过 RSSI 值,您可以检查是否足够靠近路由器。

AP MAC 地址 = BSSID,您可以在以下链接中了解更多信息:http://www.juniper.net/documentation/en_US/network-director1.5/topics/concept/wireless-ssid-bssid-essid.html


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接