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