Программно установить пароль Wi-Fi точки доступа
Я хочу программно установить свой пароль для точки доступа Wi-Fi для своего приложения, чтобы пользователю не приходилось заходить в меню настроек, чтобы проверить свой пароль.
Я уже использую NEHotspotNetwork, где он устанавливает пароль, но здесь нам нужно установить пароль, который уже есть в меню настроек для подключения к сети.
Также полезно, если я смогу получить пароль от точки доступа Wi-Fi из приложения без джейлбрейка моего устройства.
2 ответа
Вам просто нужно использовать следующий код:
WifiConfiguration netConfig = new WifiConfiguration();
netConfig .preSharedKey = "yourpassword";
С помощью регистра функции NEHotspotNetwork вы можете установить пароль
NEHotspotHelper.register(параметры: параметры, очередь: очередь) { (cmd: NEHotspotHelperCommand) в
if cmd.commandType == NEHotspotHelperCommandType.filterScanList {
//Get all available hotspots
var list: [NEHotspotNetwork] = cmd.networkList!
//Figure out the hotspot you wish to connect to
// let desiredNetwork : NEHotspotNetwork? = getBestScanResult(list)
var hotspot = [NEHotspotNetwork]()
for network in cmd.networkList!
{//check for your network ssid and set password
network.setConfidence(.high)
network.setPassword("yourpassword") //Set the WIFI password
hotspot.append(network)
}
let response = cmd.createResponse(NEHotspotHelperResult.success)
response.setNetworkList(hotspot)
response.deliver() } else if cmd.commandType == NEHotspotHelperCommandType.evaluate {
if let network = cmd.network {
let response = cmd.createResponse(NEHotspotHelperResult.success)
response.setNetwork(network)
response.deliver() //Respond back }
} else if cmd.commandType == NEHotspotHelperCommandType.authenticate {
//Perform custom authentication and respond back with success
// if all is OK
let response = cmd.createResponse(NEHotspotHelperResult.success)
response.deliver() //Respond back
}
Также вы можете использовать профиль конфигурации сети с помощью инструмента Apple Configurator 2 для вашей известной сети. Там вам нужно настроить свой Wi-Fi, а затем после установки NCP на вашем устройстве, он автоматически подключится к указанной сети. Но вы должны разместить этот файл на сервере, потому что мы не можем загрузить профиль локально и использовать локальный сервер, такой как GCDServer(пробовал уже.)