1e41f4b71Sopenharmony_ci# @ohos.enterprise.wifiManager(Wi-Fi管理) 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ci本模块提供企业设备Wi-Fi管理能力,包括查询Wi-Fi开启状态等。 4e41f4b71Sopenharmony_ci 5e41f4b71Sopenharmony_ci> **说明:** 6e41f4b71Sopenharmony_ci> 7e41f4b71Sopenharmony_ci> 本模块首批接口从API version 12开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8e41f4b71Sopenharmony_ci> 9e41f4b71Sopenharmony_ci> 本模块接口仅可在Stage模型下使用。 10e41f4b71Sopenharmony_ci> 11e41f4b71Sopenharmony_ci> 本模块接口仅对[设备管理应用](../../mdm/mdm-kit-guide.md#功能介绍)开放,需将设备管理应用激活后调用,实现相应功能。 12e41f4b71Sopenharmony_ci> 13e41f4b71Sopenharmony_ci> 全局通用限制类策略由restrictions统一提供,若要全局禁用Wi-Fi,请参考[@ohos.enterprise.restrictions(限制类策略)](js-apis-enterprise-restrictions.md)。 14e41f4b71Sopenharmony_ci 15e41f4b71Sopenharmony_ci## 导入模块 16e41f4b71Sopenharmony_ci 17e41f4b71Sopenharmony_ci```ts 18e41f4b71Sopenharmony_ciimport { wifiManager } from '@kit.MDMKit'; 19e41f4b71Sopenharmony_ci``` 20e41f4b71Sopenharmony_ci 21e41f4b71Sopenharmony_ci## wifiManager.isWifiActiveSync 22e41f4b71Sopenharmony_ci 23e41f4b71Sopenharmony_ciisWifiActiveSync(admin: Want): boolean 24e41f4b71Sopenharmony_ci 25e41f4b71Sopenharmony_ci指定设备管理应用查询Wi-Fi开启状态。 26e41f4b71Sopenharmony_ci 27e41f4b71Sopenharmony_ci**需要权限:** ohos.permission.ENTERPRISE_MANAGE_WIFI 28e41f4b71Sopenharmony_ci 29e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 30e41f4b71Sopenharmony_ci 31e41f4b71Sopenharmony_ci 32e41f4b71Sopenharmony_ci 33e41f4b71Sopenharmony_ci**参数:** 34e41f4b71Sopenharmony_ci 35e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 36e41f4b71Sopenharmony_ci| ------ | ------------------------------------------------------- | ---- | -------------- | 37e41f4b71Sopenharmony_ci| admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | 是 | 设备管理应用。 | 38e41f4b71Sopenharmony_ci 39e41f4b71Sopenharmony_ci**返回值:** 40e41f4b71Sopenharmony_ci 41e41f4b71Sopenharmony_ci| 类型 | 说明 | 42e41f4b71Sopenharmony_ci| ------- | ---------------------------------------------------------- | 43e41f4b71Sopenharmony_ci| boolean | 返回Wi-Fi开启状态,true表示Wi-Fi开启,false表示Wi-Fi关闭。 | 44e41f4b71Sopenharmony_ci 45e41f4b71Sopenharmony_ci**错误码**: 46e41f4b71Sopenharmony_ci 47e41f4b71Sopenharmony_ci以下的错误码的详细介绍请参见[企业设备管理错误码](errorcode-enterpriseDeviceManager.md)和[通用错误码](../errorcode-universal.md)。 48e41f4b71Sopenharmony_ci 49e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 50e41f4b71Sopenharmony_ci| -------- | ------------------------------------------------------------ | 51e41f4b71Sopenharmony_ci| 9200001 | The application is not an administrator application of the device. | 52e41f4b71Sopenharmony_ci| 9200002 | The administrator application does not have permission to manage the device. | 53e41f4b71Sopenharmony_ci| 201 | Permission verification failed. The application does not have the permission required to call the API. | 54e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 55e41f4b71Sopenharmony_ci 56e41f4b71Sopenharmony_ci**示例:** 57e41f4b71Sopenharmony_ci 58e41f4b71Sopenharmony_ci```ts 59e41f4b71Sopenharmony_ciimport { Want } from '@kit.AbilityKit'; 60e41f4b71Sopenharmony_cilet wantTemp: Want = { 61e41f4b71Sopenharmony_ci bundleName: 'com.example.myapplication', 62e41f4b71Sopenharmony_ci abilityName: 'EntryAbility', 63e41f4b71Sopenharmony_ci}; 64e41f4b71Sopenharmony_ci 65e41f4b71Sopenharmony_citry { 66e41f4b71Sopenharmony_ci let result: boolean = wifiManager.isWifiActiveSync(wantTemp); 67e41f4b71Sopenharmony_ci console.info(`Succeeded in query is wifi active or not, result : ${result}`); 68e41f4b71Sopenharmony_ci} catch (err) { 69e41f4b71Sopenharmony_ci console.error(`Failed to query is wifi active or not. Code: ${err.code}, message: ${err.message}`); 70e41f4b71Sopenharmony_ci} 71e41f4b71Sopenharmony_ci``` 72e41f4b71Sopenharmony_ci 73e41f4b71Sopenharmony_ci## wifiManager.setWifiProfileSync 74e41f4b71Sopenharmony_ci 75e41f4b71Sopenharmony_cisetWifiProfileSync(admin: Want, profile: WifiProfile): void 76e41f4b71Sopenharmony_ci 77e41f4b71Sopenharmony_ci指定设备管理应用为设备配置Wi-Fi,使连接到指定网络。 78e41f4b71Sopenharmony_ci 79e41f4b71Sopenharmony_ci**需要权限:** ohos.permission.ENTERPRISE_MANAGE_WIFI 80e41f4b71Sopenharmony_ci 81e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 82e41f4b71Sopenharmony_ci 83e41f4b71Sopenharmony_ci 84e41f4b71Sopenharmony_ci 85e41f4b71Sopenharmony_ci**参数:** 86e41f4b71Sopenharmony_ci 87e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 88e41f4b71Sopenharmony_ci| ------- | ------------------------------------------------------- | ---- | -------------- | 89e41f4b71Sopenharmony_ci| admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | 是 | 设备管理应用。 | 90e41f4b71Sopenharmony_ci| profile | [WifiProfile](#wifiprofile) | 是 | WLAN配置信息。 | 91e41f4b71Sopenharmony_ci 92e41f4b71Sopenharmony_ci**错误码**: 93e41f4b71Sopenharmony_ci 94e41f4b71Sopenharmony_ci以下的错误码的详细介绍请参见[企业设备管理错误码](errorcode-enterpriseDeviceManager.md)和[通用错误码](../errorcode-universal.md)。 95e41f4b71Sopenharmony_ci 96e41f4b71Sopenharmony_ci| 错误码ID | 错误信息 | 97e41f4b71Sopenharmony_ci| -------- | ------------------------------------------------------------ | 98e41f4b71Sopenharmony_ci| 9200001 | The application is not an administrator application of the device. | 99e41f4b71Sopenharmony_ci| 9200002 | The administrator application does not have permission to manage the device. | 100e41f4b71Sopenharmony_ci| 201 | Permission verification failed. The application does not have the permission required to call the API. | 101e41f4b71Sopenharmony_ci| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 102e41f4b71Sopenharmony_ci 103e41f4b71Sopenharmony_ci**示例:** 104e41f4b71Sopenharmony_ci 105e41f4b71Sopenharmony_ci```ts 106e41f4b71Sopenharmony_ciimport { Want } from '@kit.AbilityKit'; 107e41f4b71Sopenharmony_ciimport { BusinessError } from '@kit.BasicServicesKit'; 108e41f4b71Sopenharmony_cilet wantTemp: Want = { 109e41f4b71Sopenharmony_ci bundleName: 'com.example.myapplication', 110e41f4b71Sopenharmony_ci abilityName: 'EntryAbility', 111e41f4b71Sopenharmony_ci}; 112e41f4b71Sopenharmony_cilet profile: wifiManager.WifiProfile = { 113e41f4b71Sopenharmony_ci 'ssid': 'name', 114e41f4b71Sopenharmony_ci 'preSharedKey': 'passwd', 115e41f4b71Sopenharmony_ci 'securityType': wifiManager.WifiSecurityType.WIFI_SEC_TYPE_PSK 116e41f4b71Sopenharmony_ci}; 117e41f4b71Sopenharmony_ci 118e41f4b71Sopenharmony_citry { 119e41f4b71Sopenharmony_ci wifiManager.setWifiProfileSync(wantTemp, profile); 120e41f4b71Sopenharmony_ci console.info('Succeeded in setting wifi profile.'); 121e41f4b71Sopenharmony_ci} catch (err) { 122e41f4b71Sopenharmony_ci console.error(`Failed to set wifi profile. Code: ${err.code}, message: ${err.message}`); 123e41f4b71Sopenharmony_ci} 124e41f4b71Sopenharmony_ci``` 125e41f4b71Sopenharmony_ci 126e41f4b71Sopenharmony_ci## WifiProfile 127e41f4b71Sopenharmony_ci 128e41f4b71Sopenharmony_ciWLAN配置信息。 129e41f4b71Sopenharmony_ci 130e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 131e41f4b71Sopenharmony_ci 132e41f4b71Sopenharmony_ci 133e41f4b71Sopenharmony_ci 134e41f4b71Sopenharmony_ci| 名称 | 类型 | 必填 | 说明 | 135e41f4b71Sopenharmony_ci| ------------- | ------------------------------------- | ---- | ----------------------------- | 136e41f4b71Sopenharmony_ci| ssid | string | 是 | 热点的SSID,编码格式为UTF-8。 | 137e41f4b71Sopenharmony_ci| bssid | string | 否 | 热点的BSSID。 | 138e41f4b71Sopenharmony_ci| preSharedKey | string | 是 | 热点的密钥。 | 139e41f4b71Sopenharmony_ci| isHiddenSsid | boolean | 否 | 是否是隐藏网络。 | 140e41f4b71Sopenharmony_ci| securityType | [WifiSecurityType](#wifisecuritytype) | 是 | 加密类型。 | 141e41f4b71Sopenharmony_ci| creatorUid | number | 否 | 创建用户的ID。 | 142e41f4b71Sopenharmony_ci| disableReason | number | 否 | 禁用原因。 | 143e41f4b71Sopenharmony_ci| netId | number | 否 | 分配的网络ID。 | 144e41f4b71Sopenharmony_ci| randomMacType | number | 否 | 随机MAC类型。 | 145e41f4b71Sopenharmony_ci| randomMacAddr | string | 否 | 随机MAC地址。 | 146e41f4b71Sopenharmony_ci| ipType | [IpType](#iptype) | 否 | IP地址类型。 | 147e41f4b71Sopenharmony_ci| staticIp | [IpProfile](#ipprofile) | 否 | 静态IP配置信息。 | 148e41f4b71Sopenharmony_ci| eapProfile | [WifiEapProfile](#wifieapprofile) | 否 | 可扩展身份验证协议配置。 | 149e41f4b71Sopenharmony_ci 150e41f4b71Sopenharmony_ci## WifiSecurityType 151e41f4b71Sopenharmony_ci 152e41f4b71Sopenharmony_ci表示加密类型的枚举。 153e41f4b71Sopenharmony_ci 154e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 155e41f4b71Sopenharmony_ci 156e41f4b71Sopenharmony_ci 157e41f4b71Sopenharmony_ci 158e41f4b71Sopenharmony_ci| 名称 | 值 | 说明 | 159e41f4b71Sopenharmony_ci| ------------------------- | ---- | ------------------------------------------------------------ | 160e41f4b71Sopenharmony_ci| WIFI_SEC_TYPE_INVALID | 0 | 无效加密类型。 | 161e41f4b71Sopenharmony_ci| WIFI_SEC_TYPE_OPEN | 1 | 开放加密类型。 | 162e41f4b71Sopenharmony_ci| WIFI_SEC_TYPE_WEP | 2 | Wired Equivalent Privacy (WEP)加密类型。 | 163e41f4b71Sopenharmony_ci| WIFI_SEC_TYPE_PSK | 3 | Pre-shared key (PSK)加密类型。 | 164e41f4b71Sopenharmony_ci| WIFI_SEC_TYPE_SAE | 4 | Simultaneous Authentication of Equals (SAE)加密类型。 | 165e41f4b71Sopenharmony_ci| WIFI_SEC_TYPE_EAP | 5 | EAP加密类型。 | 166e41f4b71Sopenharmony_ci| WIFI_SEC_TYPE_EAP_SUITE_B | 6 | Suite-B 192位加密类型。 | 167e41f4b71Sopenharmony_ci| WIFI_SEC_TYPE_OWE | 7 | 机会性无线加密类型。 | 168e41f4b71Sopenharmony_ci| WIFI_SEC_TYPE_WAPI_CERT | 8 | WAPI-Cert加密类型。 | 169e41f4b71Sopenharmony_ci| WIFI_SEC_TYPE_WAPI_PSK | 9 | WAPI-PSK加密类型。 | 170e41f4b71Sopenharmony_ci 171e41f4b71Sopenharmony_ci## IpType 172e41f4b71Sopenharmony_ci 173e41f4b71Sopenharmony_ci表示IP类型的枚举。 174e41f4b71Sopenharmony_ci 175e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 176e41f4b71Sopenharmony_ci 177e41f4b71Sopenharmony_ci 178e41f4b71Sopenharmony_ci 179e41f4b71Sopenharmony_ci| 名称 | 值 | 说明 | 180e41f4b71Sopenharmony_ci| ------- | ---- | -------------- | 181e41f4b71Sopenharmony_ci| STATIC | 0 | 静态IP。 | 182e41f4b71Sopenharmony_ci| DHCP | 1 | 通过DHCP获取。 | 183e41f4b71Sopenharmony_ci| UNKNOWN | 2 | 未指定。 | 184e41f4b71Sopenharmony_ci 185e41f4b71Sopenharmony_ci## IpProfile 186e41f4b71Sopenharmony_ci 187e41f4b71Sopenharmony_ciIP配置信息。 188e41f4b71Sopenharmony_ci 189e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 190e41f4b71Sopenharmony_ci 191e41f4b71Sopenharmony_ci 192e41f4b71Sopenharmony_ci 193e41f4b71Sopenharmony_ci| 名称 | 类型 | 必填 | 说明 | 194e41f4b71Sopenharmony_ci| ------------ | ------------------- | ---- | ----------- | 195e41f4b71Sopenharmony_ci| ipAddress | number | 是 | IP地址。 | 196e41f4b71Sopenharmony_ci| gateway | number | 是 | 网关。 | 197e41f4b71Sopenharmony_ci| prefixLength | number | 是 | 掩码。 | 198e41f4b71Sopenharmony_ci| dnsServers | number[] | 是 | DNS服务器。 | 199e41f4b71Sopenharmony_ci| domains | Array<string> | 是 | 域信息。 | 200e41f4b71Sopenharmony_ci 201e41f4b71Sopenharmony_ci## WifiEapProfile 202e41f4b71Sopenharmony_ci 203e41f4b71Sopenharmony_ci可扩展身份验证协议配置信息。 204e41f4b71Sopenharmony_ci 205e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 206e41f4b71Sopenharmony_ci 207e41f4b71Sopenharmony_ci 208e41f4b71Sopenharmony_ci 209e41f4b71Sopenharmony_ci| 名称 | 类型 | 必填 | 说明 | 210e41f4b71Sopenharmony_ci| ----------------- | ----------------------------- | ---- | -------------------------------- | 211e41f4b71Sopenharmony_ci| eapMethod | [EapMethod](#eapmethod) | 是 | AP认证方式。 | 212e41f4b71Sopenharmony_ci| phase2Method | [Phase2Method](#phase2method) | 是 | 第二阶段认证方式。 | 213e41f4b71Sopenharmony_ci| identity | string | 是 | 身份信息。 | 214e41f4b71Sopenharmony_ci| anonymousIdentity | string | 是 | 匿名身份。 | 215e41f4b71Sopenharmony_ci| password | string | 是 | 密码。 | 216e41f4b71Sopenharmony_ci| caCertAliases | string | 是 | CA 证书别名。 | 217e41f4b71Sopenharmony_ci| caPath | string | 是 | CA 证书路径。 | 218e41f4b71Sopenharmony_ci| clientCertAliases | string | 是 | 客户端证书别名。 | 219e41f4b71Sopenharmony_ci| certEntry | Uint8Array | 是 | CA 证书内容。 | 220e41f4b71Sopenharmony_ci| certPassword | string | 是 | CA证书密码。 | 221e41f4b71Sopenharmony_ci| altSubjectMatch | string | 是 | 替代主题匹配。 | 222e41f4b71Sopenharmony_ci| domainSuffixMatch | string | 是 | 域后缀匹配。 | 223e41f4b71Sopenharmony_ci| realm | string | 是 | 通行证凭证的领域。 | 224e41f4b71Sopenharmony_ci| plmn | string | 是 | 公共陆地移动网的直通凭证提供商。 | 225e41f4b71Sopenharmony_ci| eapSubId | number | 是 | SIM卡的子ID。 | 226e41f4b71Sopenharmony_ci 227e41f4b71Sopenharmony_ci## EapMethod 228e41f4b71Sopenharmony_ci 229e41f4b71Sopenharmony_ci表示EAP认证方式的枚举。 230e41f4b71Sopenharmony_ci 231e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 232e41f4b71Sopenharmony_ci 233e41f4b71Sopenharmony_ci 234e41f4b71Sopenharmony_ci 235e41f4b71Sopenharmony_ci| 名称 | 值 | 说明 | 236e41f4b71Sopenharmony_ci| -------------- | ---- | ---------------- | 237e41f4b71Sopenharmony_ci| EAP_NONE | 0 | 不指定。 | 238e41f4b71Sopenharmony_ci| EAP_PEAP | 1 | PEAP类型。 | 239e41f4b71Sopenharmony_ci| EAP_TLS | 2 | TLS类型。 | 240e41f4b71Sopenharmony_ci| EAP_TTLS | 3 | TTLS类型。 | 241e41f4b71Sopenharmony_ci| EAP_PWD | 4 | PWD类型。 | 242e41f4b71Sopenharmony_ci| EAP_SIM | 5 | SIM类型。 | 243e41f4b71Sopenharmony_ci| EAP_AKA | 6 | AKA类型。 | 244e41f4b71Sopenharmony_ci| EAP_AKA_PRIME | 7 | AKA Prime类型。 | 245e41f4b71Sopenharmony_ci| EAP_UNAUTH_TLS | 8 | UNAUTH TLS类型。 | 246e41f4b71Sopenharmony_ci 247e41f4b71Sopenharmony_ci## Phase2Method 248e41f4b71Sopenharmony_ci 249e41f4b71Sopenharmony_ci表示第二阶段认证方式的枚举。 250e41f4b71Sopenharmony_ci 251e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager 252e41f4b71Sopenharmony_ci 253e41f4b71Sopenharmony_ci 254e41f4b71Sopenharmony_ci 255e41f4b71Sopenharmony_ci| 名称 | 值 | 说明 | 256e41f4b71Sopenharmony_ci| ---------------- | ---- | --------------- | 257e41f4b71Sopenharmony_ci| PHASE2_NONE | 0 | 不指定。 | 258e41f4b71Sopenharmony_ci| PHASE2_PAP | 1 | PAP类型。 | 259e41f4b71Sopenharmony_ci| PHASE2_MSCHAP | 2 | MSCHAP类型。 | 260e41f4b71Sopenharmony_ci| PHASE2_MSCHAPV2 | 3 | MSCHAPV2类型。 | 261e41f4b71Sopenharmony_ci| PHASE2_GTC | 4 | GTC类型。 | 262e41f4b71Sopenharmony_ci| PHASE2_SIM | 5 | SIM类型。 | 263e41f4b71Sopenharmony_ci| PHASE2_AKA | 6 | AKA类型。 | 264e41f4b71Sopenharmony_ci| PHASE2_AKA_PRIME | 7 | AKA Prime类型。 | 265