Как получить список SSID сетей, доступных для устройства в момент поиска?

Мне нужно получить список доступных сетей с их параметрами (например, SSID), используя NetworkExtensions. Теперь я в процессе получения доступа к библиотеке NetworkExtensions, для этого нужно некоторое время после запроса.

Если у кого-то уже есть код, может быть, какая-то личная написанная функция, и он может поделиться этим кодом со мной и другими форумчанами - сделайте это :)

UPD: В ответах есть несколько хороших идей и ссылка на kNEHotspotHelperCommandTypeFilterForScan, но я действительно не знаю, как его использовать.


person Golovanov Dmytrii    schedule 29.03.2018    source источник
comment
Вы не можете сделать это в iOS.   -  person DonMag    schedule 29.03.2018
comment
@DonMag, почему? Может быть, вы не знали о NEHotspotHelper? Я не хочу спорить с вами, но это, возможно, поможет мне.   -  person Golovanov Dmytrii    schedule 03.05.2018
comment
Возможный дубликат iPhone получить список всех SSID без частного библиотека   -  person Senseful    schedule 24.09.2018


Ответы (1)


Похоже, вы не можете просто получить доступ к этой информации с помощью Captive network Api. Вы можете получить информацию о Wi-Fi, к которому в настоящее время подключено ваше устройство, используя CNCopyCurrentNetworkInfo

вы можете получить информацию о ssid, используя NEHotspotHelper в Network Extension, но вам нужно получить доступ из Apple перед использованием NEHotspotHelper.

Используя NEHotspotHelperCommandType => FilterScanList (фильтр списка сканирования Wi-Fi) и Оценить(Оценить сеть). вы можете получить все доступные NEHotspotNetwork (которые будут содержать ssid, bssid и signalStrength) после регистрация прошла успешно

Ссылка: https://stackoverflow.com/a/39189063/1741121

person Gokul G    schedule 29.03.2018
comment
Вы правы, я могу выполнить свою задачу с NEHotspotHelper, после того, как я заболел от яблока. Этот процесс займет ~3 недели. Может быть, вы можете написать код для использования FilterScanList - person Golovanov Dmytrii; 03.05.2018
comment
NEHotspotNetwork будет возвращать список сетей только тогда, когда пользователь переходит на страницу Wi-Fi в настройках. Подробнее см. в этом ответе. - person Senseful; 24.09.2018
comment
NEHotspotNetwork.fetchCurrent дает мне текущую подключенную сеть SSID только в течение нескольких секунд, а после этого в основном около 4-5 секунд он возвращает нулевой объект ... есть идеи? Я пытаюсь получить информацию о подключенном SSID, пока приложение находится в фоновом режиме в iOS 14. Спасибо. - person shaqir saiyed; 03.12.2020