2013-11-10 3 views
5

Я ищу способ сканирования доступных точек доступа Wi-Fi (горячих точек) из моего приложения IOS.CoreWLAN или любой другой открытый API для IOS 7

Все, что мне нужно, это список активных в настоящий момент имен точек доступа, к которым подключено устройство. Как и Safari, отображается список горячих точек Wi-Fi, когда мы запускаем или активируем его.

Я бы хотел опубликовать приложение в App Store, поэтому я не могу использовать какой-либо частный API (правильно?). И, к сожалению, CoreWLAN.framework недоступен для IOS (правда?).

Итак, можно ли достичь моей цели? Могу ли я собирать имена точек доступа (SSID) каким-то образом?

ответ

8

В настоящий момент нет открытых API-интерфейсов, которые вы можете использовать для получения списка доступных точек доступа Wi-Fi. Поскольку вы планируете публиковать в App Store, частные API не являются вариантом.

Самое близкое, что вы можете достигнуть, - это получить имя и данные, связанные с подключенным Wi-Fi в данный момент, которые могут быть достигнуты с помощью CaptiveNetwork с помощью SystemConfiguration.framework.

+ (NSString *)currentSSID 
{ 
    NSString *ssid; 

    NSArray *interfaces = (__bridge_transfer id)CNCopySupportedInterfaces(); 

    for (NSString *interfaceName in interfaces) { 
     NSDictionary *informations = (__bridge_transfer id)CNCopyCurrentNetworkInfo((__bridge CFStringRef)interfaceName); 

     if (informations[@"SSID"]) { 
      ssid = informations[@"SSID"]; 
     } 
    } 

    return ssid; 
} 
Смежные вопросы