回答
我就是這麼做的:
NSArray* interfaces = (NSArray*) CNCopySupportedInterfaces();
for (NSString* interface in interfaces)
{
CFDictionaryRef networkDetails = CNCopyCurrentNetworkInfo((CFStringRef) interface);
if (networkDetails)
{
NSLog(@"all details: %@", (NSDictionary *)networkDetails);
NSLog(@"BSSID: %@", (NSString *)CFDictionaryGetValue (networkDetails, kCNNetworkInfoKeyBSSID));
BSSID1 = (NSString *)CFDictionaryGetValue (networkDetails, kCNNetworkInfoKeyBSSID);
BSSID = [[BSSID1 stringByReplacingOccurrencesOfString:@":"
withString:@""] uppercaseString];
NSLog(@"%@",BSSID);
CFRelease(networkDetails);
}
}
不幸的是,這不再適用於iOS 9. – DanielG 2015-08-06 23:18:38
看來蘋果已棄用CaptiveNetwork,但隨後遷移到NEHotspotHelper。檢查出來:http://stackoverflow.com/questions/31555640/how-to-get-wifi-ssid-in-ios9-after-captivenetwork-is-depracted-and-calls-for-wif – TimeString 2016-02-02 00:50:54
以下回答覆制自answer。
在iOS 4.1或更高版本,你可以這樣做:
#import <SystemConfiguration/CaptiveNetwork.h>
- (id)fetchSSIDInfo
{
NSArray *ifs = (id)CNCopySupportedInterfaces();
NSLog(@"%s: Supported interfaces: %@", __func__, ifs);
id info = nil;
for (NSString *ifnam in ifs) {
info = (id)CNCopyCurrentNetworkInfo((CFStringRef)ifnam);
NSLog(@"%s: %@ => %@", __func__, ifnam, info);
if (info && [info count]) {
break;
}
[info release];
}
[ifs release];
return [info autorelease];
}
輸出示例:
2011-03-04 15:32:00.669 ShowSSID[4857:307] -[ShowSSIDAppDelegate fetchSSIDInfo]: Supported interfaces: (
en0
)
2011-03-04 15:32:00.693 ShowSSID[4857:307] -[ShowSSIDAppDelegate fetchSSIDInfo]: en0 => {
BSSID = "ca:fe:ca:fe:ca:fe";
SSID = XXXX;
SSIDDATA = <>;
}
注意,沒有如果支持在模擬器上。在您的設備上測試。
1.增加SystemConfiguration.framework
2.import < SystemConfiguration/CaptiveNetwork.h>
3.使用下面的方法
+(NSString *)currentWifiBSSID {
NSString *bssid = nil;
NSArray *ifs = (__bridge_transfer id)CNCopySupportedInterfaces();
for (NSString *ifnam in ifs) {
NSDictionary *info = (__bridge_transfer id)CNCopyCurrentNetworkInfo((__bridge CFStringRef)ifnam);
NSLog(@"info:%@",info);
if (info[@"BSSID"]) {
bssid = info[@"BSSID"];
}
}
return bssid;
}
希望這會有幫助
- 1. iPhone沒有私人圖書館獲取所有SSID列表
- 2. 私人圖書館IOS的SSID信息?
- 3. 如何獲得在圖書館笨
- 4. 圖書館沒有找到
- 5. 圖書館沒有加載
- 6. 建立在私人電腦上的圖書館
- 7. Android的私人圖書館是不是在Java構建路徑
- 8. 哪裏可以獲得iPhone開發人員證書的私鑰?
- 9. CoverFlow的圖書館iPhone
- 10. Forth機器人圖書館?
- 11. 如何在cmake上獲得圖書館全名?
- 12. 有沒有人成功實施Holoeverywhere + Slidingmenu圖書館100%完美?
- 13. 有沒有圖書館來展示虛擬人物[WPF]
- 14. 如何獲得文件到圖書館目錄iphone設備測試
- 15. xcode的圖書館沒有找到
- 16. xcode的圖書館沒有找到-lobjc
- 17. 安卓蝕除去罐子打破了私人圖書館
- 18. 的Java處理私有方法/對象在圖書館
- 19. 圖書館對圖書館的引用
- 20. 如何安裝/獲取QuickFIX圖書館
- 21. 如何獲得Apple開發人員證書/私鑰?
- 22. 如何在圖書館中使用Realm
- 23. IOS:圖書館沒有找到-lz.1.2.3
- 24. 我可以在ios8中使用libicucore.dylib,這是一個私人圖書館嗎?
- 25. 圖書館的文件生成器iphone
- 26. 在圖書館項目中獲得剃鬚刀intellisense?
- 27. 圖書館圖書館:如何正確處理重點?
- 28. 解釋`core.reducers`圖書館的外行人
- 29. 如何使用谷歌Analitycs在iOS中,沒有在所有圖書館
- 30. 如何設計圖書館?
想要什麼?請提供更多詳細信息,然後有人可以幫助你。 – Ayaz 2013-03-04 06:29:53