我想以编程方式为我的应用程序设置我的 WiFi 热点密码,以便用户不必转到设置菜单来检查其密码。
我已经在使用NEHotspotNetwork,它设置了密码,但是在这里,我们需要设置密码,该密码已经存在于设置菜单中用于连接到网络。
如果我可以在不越狱我的设备的情况下从应用程序获取我的 WiFi 热点密码,这也会很有帮助。
您只需要使用以下代码:
WifiConfiguration netConfig = new WifiConfiguration();
netConfig .preSharedKey = "yourpassword";
使用NEHotspotNetwork功能
register
,可以设置密码:
NEHotspotHelper.register(options: options, queue: queue) { (cmd: NEHotspotHelperCommand) in
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 工具为您的已知网络使用网络配置文件。
您需要设置您的 WiFi,然后在您的设备上安装 NCP 后,它将自动连接到上述网络。
但是您必须将该文件托管在服务器上,因为我们无法在本地下载配置文件并使用 GCDServer 等本地服务器(已经尝试过)。