iPhone SDKは、現在接続されているWi-Fi SSIDを取得できますか?
質問
iPhone SDKで、Mac OS Xで使用されているものと同じSCDynamicStore
が表示されず、ワイヤレスネットワークが現在接続されているSSID名を取得できません。
iPhoneが現在接続されているSSID名を取得する方法はありますか?
いくつかのアプリがそれを行うのを見る( AT <!> amp; T 向けの簡単なWi-Fi)ですが、iPhone SDKのドキュメントでその方法を見つけることができません。プライベートまたは非公開の方法は、概念実証として受け入れられます(ただし、AppStoreに到達しない可能性が高いことはわかっていますが)。
解決
他のヒント
掘り下げた後、私はこれに対する答えを見つけました。 Preferencesフレームワークには未公開のAPIがあります。この例については、 Stumblerコードをご覧ください。 Google Codeでホストされています。
マークされたレーダー(#6407431 / OpenRadarバージョン)にレーダーを提出しました#5814810の複製として)。これを公式にサポートしたい場合は、 bugreport.apple.com にもレーダーを提出してください。
更新:上記のStumblerコードは、iPhone OS SDK 1.xリビジョン用です。 iPhone OS 2.0以降の場合、開発者はPrivateFrameworks / Apple80211.Frameworkおよびそのすべてを確認する必要があります。
このコードを試してください
#import <SystemConfiguration/CaptiveNetwork.h>
CFArrayRef myArray = CNCopySupportedInterfaces();
CFDictionaryRef myDict = CNCopyCurrentNetworkInfo(CFArrayGetValueAtIndex(myArray, 0));
NSDictionary *ssidList = (__bridge NSDictionary*)myDict;
NSString *SSID = [ssidList valueForKey:@"SSID"];
所属していません StackOverflow