2008-12-03 56 views
13

在iPhone SDK中,我看不到在Mac OS X上使用的相同SCDynamicStore以獲取無線網絡當前連接的SSID名稱不可用。iPhone SDK可以獲取當前連接的Wi-Fi SSID嗎?

有沒有辦法獲得iPhone當前連接的SSID名稱?

我看到一些應用程序這樣做(Easy Wi-Fi for AT&T爲一),但我無法找到它是如何在iPhone SDK文檔中完成的。一個私人或不公開的方法是可以接受的,只是作爲一個概念證明(儘管我知道它可能不會到達AppStore)。

回答

6

挖掘周圍後,我發現了這個。 Preferences框架中有未發佈的API。例如,您可以查看Google代碼上託管的Stumbler code

我向蘋果提交了一個雷達(#6407431/OpenRadar version),標記爲#5814810的副本。如果您希望得到官方的支持,請在bugreport.apple.com提交雷達。

更新:上述Stumbler代碼用於1.x修訂版iPhone OS SDK。對於iPhone OS 2.0及更高版本,開發人員必須查看PrivateFrameworks/Apple80211.Framework及其所有含義。

4

試試這個代碼,

#import <SystemConfiguration/CaptiveNetwork.h> 

CFArrayRef myArray = CNCopySupportedInterfaces(); 
CFDictionaryRef myDict = CNCopyCurrentNetworkInfo(CFArrayGetValueAtIndex(myArray, 0)); 
NSDictionary *ssidList = (__bridge NSDictionary*)myDict; 
NSString *SSID = [ssidList valueForKey:@"SSID"]; 
+0

注意到,你需要在myArray的空校驗 – funroll 2015-01-13 22:18:19

相關問題