我想以编程方式为我的应用程序设置我的 wifi 热点密码,这样用户就不必去设置菜单检查他们的密码。
我已经在使用 NEHotspotNetwork,它设置了密码,但是在这里,我们需要设置连接到网络的设置菜单中已经存在的密码。
如果我可以从应用程序中获取我的 wifi 热点密码而无需越狱我的设备,这也很有帮助。
我想以编程方式为我的应用程序设置我的 wifi 热点密码,这样用户就不必去设置菜单检查他们的密码。
我已经在使用 NEHotspotNetwork,它设置了密码,但是在这里,我们需要设置连接到网络的设置菜单中已经存在的密码。
如果我可以从应用程序中获取我的 wifi 热点密码而无需越狱我的设备,这也很有帮助。
使用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 这样的本地服务器(已经尝试过。)
您只需要使用以下代码:
WifiConfiguration netConfig = new WifiConfiguration();
netConfig .preSharedKey = "yourpassword";