На iPhone можно узнать, к какой сети WIFI мы подключены? - PullRequest
6 голосов
/ 14 апреля 2010

Если да, можем ли мы также получить дополнительную информацию о конфигурации сети?

Одним из полезных способов сделать это может быть получение SSID текущей сети. Есть ли API для этого?

Обновление: я нашел похожий вопрос здесь:

Может ли iPhone SDK получить SSID Wi-Fi, к которому подключен в настоящее время?

Ответы [ 4 ]

2 голосов
/ 09 апреля 2015

Попробуйте следующий метод:

#import <SystemConfiguration/CaptiveNetwork.h>

NSString *wifiName = @"Not Found";
CFArrayRef myArray = CNCopySupportedInterfaces();

if (myArray != nil) {

    CFDictionaryRef myDict = CNCopyCurrentNetworkInfo(CFArrayGetValueAtIndex(myArray, 0));

    if (myDict != nil) {
        NSDictionary *dict = (NSDictionary*)CFBridgingRelease(myDict);

        wifiName = [dict valueForKey:@"SSID"];

    }  
}

NSLog(@"wifiName:%@", wifiName);
1 голос
/ 14 апреля 2010

(Отдельный ответ для сохранения истории и т.Магазин приложений. Эти люди используют частный API - Preferences.framework - для доступа к деталям WLAN (например, «скрыто ли это?», «Как называется?» И т.

1 голос
/ 14 апреля 2010

Не могу комментировать, но это может быть дубликатом:

Доступ к информации iPhone WiFi через SDK

Ответ, похоже, нет. Я провел собственное исследование по этому вопросу и не смог найти поддерживаемый способ получения SSID.

0 голосов
/ 14 апреля 2010

Вы смотрели пример приложения Reachability ?

Изменить: Приложение Reachability демонстрирует использование инфраструктуры SystemConfiguration, чтобы показать, подключен ли ваш телефон к Интернету, и, если да, как.

Кроме того, он позволяет различать локальное соединение WiFi и нет (+ [Достижимость достижимости для LocalWiFi]).

Что касается сути вашего вопроса, вам придется обратиться к таблице ARP телефона. Этот ответ показывает, как это сделать.

...