配置管理器,应用并删除Wi-Fi网络的热点配置。
SDK
- iOS 11.0+
骨架
- 网络扩展
概观
当您的应用使用Wi-Fi网络创建新的热点配置并将其应用于Wi-Fi网络或尝试更新先前配置的网络时,设备会提示用户进行审批。没有明确的用户同意,您的应用程序无法进行配置更改。NEHotspotConfiguration
您的应用可以使用或删除已添加的配置,但不能使用其他应用或用户添加的配置。用户还可以使用设置> Wi-Fi删除已配置的网络。removeConfiguration(forHS20DomainName:)
removeConfiguration(forSSID:)
当您的应用程序被卸载时,它所配置的所有网络的配置将被删除,包括它们的钥匙串条目。
热点配置管理器错误列在中。NEHotspotConfigurationError
重要要使用该类,您必须在Xcode中启用热点配置功能。请参阅向目标添加功能。NEHotspotConfigurationManager
主题
应用配置
func apply(NEHotspotConfiguration, completionHandler: ((Error?) -> Void)? = nil)
在提示用户许可后添加或更新Wi-Fi网络配置,然后在特定条件下尝试加入网络。
获取当前配置
func getConfiguredSSIDs(completionHandler: ([String]) -> Void)
返回您的应用配置的Wi-Fi热点域的SSID或名称,并调用可选的完成处理程序。
删除域名配置
func removeConfiguration(forHS20DomainName: String)
删除由热点2.0域名标识的Wi-Fi热点配置,您的应用以前添加的配置。
删除SSID配置
func removeConfiguration(forSSID: String)
移除您的应用以前添加的由SSID标识的Wi-Fi配置。
共享配置
class var shared: NEHotspotConfigurationManager
实例化为单例,因此可以共享。NEHotspotConfigurationManager
关系
继承自
符合
也可以看看
相关文档
class NEHotspotConfiguration
Wi-Fi网络热点的配置设置。
概观
本类包含连接到Wi-Fi网络所需的配置属性和证书。NEHotspotConfiguration
主题
创建一个热点配置
为开放式,WEP,WPA / WPA2个人,WPA / WPA企业和Hotspot 2.0 Wi-Fi网络创建新的热点配置。
init(ssid: String)
为一个开放的Wi-Fi网络创建一个由SSID标识的新热点配置。
init(ssid: String, passphrase: String, isWEP: Bool)
为受保护的WEP或WPA / WPA2个人Wi-Fi网络创建一个由SSID标识的新热点配置。
init(ssid: String, eapSettings: NEHotspotEAPSettings)
为具有EAP设置的WPA / WPA2企业Wi-Fi网络创建由SSID标识的新热点配置。
init(hs20Settings: NEHotspotHS20Settings, eapSettings: NEHotspotEAPSettings)
为具有HS 2.0和EAP设置的Hotspot 2.0 Wi-Fi网络创建一个由域名标识的新热点配置。
热点配置属性
var ssid: String
开放,WEP,WPA / WPA2个人或WPA / WPA2企业Wi-Fi网络的SSID。
var lifeTimeInDays: NSNumber
网络保留相关配置的天数。
var joinOnce: Bool
将配置的生命周期限制为创建它的应用的运行状态。
class NEHotspotEAPSettings
用于配置WPA和WPA2企业Wi-Fi网络的可扩展身份验证协议(EAP)设置。
配置EAP握手
var isTLSClientCertificateRequired: Bool
一个布尔值,指示网络是否需要双因素身份验证或允许零因素身份验证。
var trustedServerNames: [String]
用于验证服务器证书的服务器证书公用名字符串数组。
var supportedEAPTypes: [NSNumber]
支持的EAP类型的数组。
enum NEHotspotEAPSettings.EAPType
可以在中指定的EAP类型。supportedEAPTypes
var username: String
EAP认证的用户名字符串,编码为UTF-8。
var password: String
IEEE 802.1X身份验证凭证的密码组件。
var preferredTLSVersion: NEHotspotEAPSettings.TLSVersion
在TLS身份验证握手期间使用的传输层安全(TLS)版本。
enum NEHotspotEAPSettings.TLSVersion
EAPTLS版本标识符可以通过。preferredTLSVersion
var outerIdentity: String
外部EAP认证期间在EAP-Identity / Response数据包中使用的身份字符串。
var ttlsInnerAuthenticationType: NEHotspotEAPSettings.TTLSInnerAuthenticationType
TTLS模块使用的内层认证协议。
enum NEHotspotEAPSettings.TTLSInnerAuthenticationType
TTLS内部认证类型可以通过。NEHotspotEAPSettings.TTLSInnerAuthenticationType
设置验证值
func setIdentity(SecIdentity)
设置EAP认证的客户端标识。
func setTrustedServerCertificates([Any])
为企业Wi-Fi或Hotspot 2.0网络设置可信的EAP服务器证书。
class NEHotspotHS20Settings
配置Hotspot 2.0 Wi-Fi网络的设置。
init(domainName: String, roamingEnabled: Bool)
创建传统Hotspot或HS 2.0 Wi-Fi网络的新热点配置。启用可选的漫游功能。
热点2.0属性
var domainName: String
Hotspot 2.0 Wi-Fi网络的域名。
var isRoamingEnabled: Bool
一个布尔值,指示是否在Hotspot 2.0 Wi-Fi网络上启用漫游。
var mccAndMNCs: [String]
用于Wi-Fi热点2.0协商的一组移动国家代码(MCC)和移动网络代码(MNC)对。
var naiRealmNames: [String]
用于Wi-Fi热点2.0协商的一组网络访问标识符(NAI)领域名称字符串。
var roamingConsortiumOIs: [String]
用于Wi-Fi热点2.0协商的一组漫游联盟组织(RCO)标识符。