• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.enterprise.wifiManager(Wi-Fi管理)(系统接口)
2<!--Kit: MDM Kit-->
3<!--Subsystem: Customization-->
4<!--Owner: @huanleima-->
5<!--Designer: @liuzuming-->
6<!--Tester: @lpw_work-->
7<!--Adviser: @Brilliantry_Rui-->
8
9本模块提供企业设备Wi-Fi管理能力,包括查询Wi-Fi开启状态等。
10
11> **说明:**
12>
13> 本模块首批接口从API version 10开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
14>
15> 本模块接口仅可在Stage模型下使用。
16>
17> 本模块接口仅对[设备管理应用](../../mdm/mdm-kit-term.md#mdm应用设备管理应用)开放,需将[设备管理应用激活](js-apis-enterprise-adminManager-sys.md#adminmanagerenableadmin-2)后调用。
18>
19> 当前页面仅包含本模块的系统接口,其他公开接口参见。其他公开接口参见[@ohos.enterprise.wifiManager](js-apis-enterprise-wifiManager.md)。
20
21## 导入模块
22
23```ts
24import { wifiManager } from '@kit.MDMKit';
25```
26
27## wifiManager.isWifiActive
28
29isWifiActive(admin: Want, callback: AsyncCallback&lt;boolean&gt;): void
30
31查询当前设备的Wi-Fi开启状态。使用callback异步回调。
32
33**需要权限:** ohos.permission.ENTERPRISE_SET_WIFI
34
35**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
36
37**模型约束:** 此接口仅可在Stage模型下使用。
38
39**系统接口:** 此接口为系统接口。
40
41**参数:**
42
43| 参数名      | 类型                                       | 必填   | 说明                       |
44| -------- | ---------------------------------------- | ---- | ------------------------------- |
45| admin    | [Want](../apis-ability-kit/js-apis-app-ability-want.md)     | 是    | 企业设备管理扩展组件。                  |
46| callback | AsyncCallback&lt;boolean&gt;            | 是    | 回调函数,当接口调用成功,err为null,data为boolean值,true表示Wi-Fi开启,false表示Wi-Fi关闭,否则err为错误对象。       |
47
48**错误码**:
49
50以下的错误码的详细介绍请参见[企业设备管理错误码](errorcode-enterpriseDeviceManager.md)和[通用错误码](../errorcode-universal.md)。
51
52| 错误码ID | 错误信息                                                                       |
53| ------- | ---------------------------------------------------------------------------- |
54| 9200001 | The application is not an administrator application of the device.            |
55| 9200002 | The administrator application does not have permission to manage the device. |
56| 201 | Permission verification failed. The application does not have the permission required to call the API. |
57| 202 | Permission verification failed. A non-system application calls a system API. |
58| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. |
59
60**示例:**
61
62```ts
63import { wifiManager } from '@kit.MDMKit';
64import { Want } from '@kit.AbilityKit';
65
66let wantTemp: Want = {
67  // 需根据实际情况进行替换
68  bundleName: 'com.example.myapplication',
69  abilityName: 'EntryAbility'
70};
71
72wifiManager.isWifiActive(wantTemp, (err, result) => {
73  if (err) {
74    console.error(`Failed to query is wifi active or not. Code: ${err.code}, message: ${err.message}`);
75    return;
76  }
77  console.info(`Succeeded in query is wifi active or not, result : ${result}`);
78});
79```
80
81## wifiManager.isWifiActive
82
83isWifiActive(admin: Want): Promise&lt;boolean&gt;
84
85查询当前设备的Wi-Fi开启状态。使用Promise异步回调。
86
87**需要权限:** ohos.permission.ENTERPRISE_SET_WIFI
88
89**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
90
91**模型约束:** 此接口仅可在Stage模型下使用。
92
93**系统接口:** 此接口为系统接口。
94
95**参数:**
96
97| 参数名   | 类型                                  | 必填   | 说明      |
98| ----- | ----------------------------------- | ---- | ------- |
99| admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | 是    | 企业设备管理扩展组件。 |
100
101**返回值:**
102
103| 类型                   | 说明                      |
104| --------------------- | ------------------------- |
105| Promise&lt;boolean&gt; | Promise对象,返回Wi-Fi开启状态,true表示Wi-Fi开启,false表示Wi-Fi关闭。  |
106
107**错误码**:
108
109以下的错误码的详细介绍请参见[企业设备管理错误码](errorcode-enterpriseDeviceManager.md)和[通用错误码](../errorcode-universal.md)。
110
111| 错误码ID | 错误信息                                                                     |
112| ------- | ---------------------------------------------------------------------------- |
113| 9200001 | The application is not an administrator application of the device.            |
114| 9200002 | The administrator application does not have permission to manage the device. |
115| 201 | Permission verification failed. The application does not have the permission required to call the API. |
116| 202 | Permission verification failed. A non-system application calls a system API. |
117| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. |
118
119**示例:**
120
121```ts
122import { wifiManager } from '@kit.MDMKit';
123import { Want } from '@kit.AbilityKit';
124import { BusinessError } from '@kit.BasicServicesKit';
125
126let wantTemp: Want = {
127  // 需根据实际情况进行替换
128  bundleName: 'com.example.myapplication',
129  abilityName: 'EntryAbility'
130};
131
132wifiManager.isWifiActive(wantTemp).then((result) => {
133  console.info(`Succeeded in query is wifi active or not, result : ${result}`);
134}).catch((err: BusinessError) => {
135  console.error(`Failed to query is wifi active or not. Code: ${err.code}, message: ${err.message}`);
136});
137```
138
139## wifiManager.setWifiProfile
140
141setWifiProfile(admin: Want, profile: WifiProfile, callback: AsyncCallback&lt;void&gt;): void
142
143为当前设备配置Wi-Fi,使连接到指定网络。使用callback异步回调。
144
145**需要权限:** ohos.permission.ENTERPRISE_SET_WIFI
146
147**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
148
149**模型约束:** 此接口仅可在Stage模型下使用。
150
151**系统接口:** 此接口为系统接口。
152
153**参数:**
154
155| 参数名      | 类型                                       | 必填   | 说明                       |
156| -------- | ---------------------------------------- | ---- | ------------------------------- |
157| admin    | [Want](../apis-ability-kit/js-apis-app-ability-want.md)     | 是    | 企业设备管理扩展组件。                  |
158| profile    | [WifiProfile](js-apis-enterprise-wifiManager.md#wifiprofile) | 是    | Wi-Fi配置信息。                  |
159| callback | AsyncCallback&lt;void&gt;            | 是    | 回调函数,当接口调用成功,err为null,否则为错误对象。      |
160
161**错误码**:
162
163以下的错误码的详细介绍请参见[企业设备管理错误码](errorcode-enterpriseDeviceManager.md)和[通用错误码](../errorcode-universal.md)。
164
165| 错误码ID | 错误信息                                                                       |
166| ------- | ---------------------------------------------------------------------------- |
167| 9200001 | The application is not an administrator application of the device.            |
168| 9200002 | The administrator application does not have permission to manage the device. |
169| 201 | Permission verification failed. The application does not have the permission required to call the API. |
170| 202 | Permission verification failed. A non-system application calls a system API. |
171| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. |
172
173**示例:**
174
175```ts
176import { wifiManager } from '@kit.MDMKit';
177import { Want } from '@kit.AbilityKit';
178
179let wantTemp: Want = {
180  // 需根据实际情况进行替换
181  bundleName: 'com.example.myapplication',
182  abilityName: 'EntryAbility'
183};
184let profile: wifiManager.WifiProfile = {
185  // 需根据实际情况进行替换
186  'ssid': 'name',
187  'preSharedKey': 'passwd',
188  'securityType': wifiManager.WifiSecurityType.WIFI_SEC_TYPE_PSK
189};
190
191wifiManager.setWifiProfile(wantTemp, profile, (err) => {
192  if (err) {
193    console.error(`Failed to set wifi profile. Code: ${err.code}, message: ${err.message}`);
194    return;
195  }
196  console.info('Succeeded in setting wifi profile');
197});
198```
199
200## wifiManager.setWifiProfile
201
202setWifiProfile(admin: Want, profile: WifiProfile): Promise&lt;void&gt;
203
204为当前设备配置Wi-Fi,使连接到指定网络。使用Promise异步回调。
205
206**需要权限:** ohos.permission.ENTERPRISE_SET_WIFI
207
208**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
209
210**模型约束:** 此接口仅可在Stage模型下使用。
211
212**系统接口:** 此接口为系统接口。
213
214**参数:**
215
216| 参数名   | 类型                                  | 必填   | 说明      |
217| ----- | ----------------------------------- | ---- | ------- |
218| admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | 是    | 企业设备管理扩展组件。 |
219| profile    | [WifiProfile](js-apis-enterprise-wifiManager.md#wifiprofile) | 是    | Wi-Fi配置信息。                  |
220
221**返回值:**
222
223| 类型                   | 说明                      |
224| --------------------- | ------------------------- |
225| Promise&lt;void&gt; | 无返回结果的Promise对象。当配置Wi-Fi连接到指定网络失败时会抛出错误对象。 |
226
227**错误码**:
228
229以下的错误码的详细介绍请参见[企业设备管理错误码](errorcode-enterpriseDeviceManager.md)和[通用错误码](../errorcode-universal.md)。
230
231| 错误码ID | 错误信息                                                                     |
232| ------- | ---------------------------------------------------------------------------- |
233| 9200001 | The application is not an administrator application of the device.            |
234| 9200002 | The administrator application does not have permission to manage the device. |
235| 201 | Permission verification failed. The application does not have the permission required to call the API. |
236| 202 | Permission verification failed. A non-system application calls a system API. |
237| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. |
238
239**示例:**
240
241```ts
242import { wifiManager } from '@kit.MDMKit';
243import { Want } from '@kit.AbilityKit';
244import { BusinessError } from '@kit.BasicServicesKit';
245
246let wantTemp: Want = {
247  // 需根据实际情况进行替换
248  bundleName: 'com.example.myapplication',
249  abilityName: 'EntryAbility'
250};
251let profile: wifiManager.WifiProfile = {
252  // 需根据实际情况进行替换
253  'ssid': 'name',
254  'preSharedKey': 'passwd',
255  'securityType': wifiManager.WifiSecurityType.WIFI_SEC_TYPE_PSK
256};
257
258wifiManager.setWifiProfile(wantTemp, profile).then(() => {
259  console.info('Succeeded in setting wifi profile');
260}).catch((err: BusinessError) => {
261  console.error(`Failed to set wifi profile. Code: ${err.code}, message: ${err.message}`);
262});
263```
264
265## wifiManager.isWifiDisabled<sup>11+</sup>
266
267isWifiDisabled(admin: Want): boolean
268
269查询当前设备Wi-Fi是否被禁用。
270
271**需要权限:** ohos.permission.ENTERPRISE_MANAGE_WIFI
272
273**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
274
275**模型约束:** 此接口仅可在Stage模型下使用。
276
277**系统接口:** 此接口为系统接口。
278
279**参数:**
280
281| 参数名   | 类型                                  | 必填   | 说明      |
282| ----- | ----------------------------------- | ---- | ------- |
283| admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | 是    | 企业设备管理扩展组件。 |
284
285**返回值:**
286
287| 类型                   | 说明                      |
288| --------------------- | ------------------------- |
289| boolean | 返回Wi-Fi禁用状态,true表示Wi-Fi被禁用,false表示Wi-Fi未被禁用。 |
290
291**错误码:**
292
293以下的错误码的详细介绍请参见[企业设备管理错误码](errorcode-enterpriseDeviceManager.md)和[通用错误码](../errorcode-universal.md)。
294
295| 错误码ID | 错误信息                                                                     |
296| ------- | ---------------------------------------------------------------------------- |
297| 9200001 | The application is not an administrator application of the device.            |
298| 9200002 | The administrator application does not have permission to manage the device. |
299| 201 | Permission verification failed. The application does not have the permission required to call the API. |
300| 202 | Permission verification failed. A non-system application calls a system API. |
301| 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. |
302
303**示例:**
304
305```ts
306import { wifiManager } from '@kit.MDMKit';
307import { Want } from '@kit.AbilityKit';
308
309let wantTemp: Want = {
310  // 需根据实际情况进行替换
311  bundleName: 'com.example.myapplication',
312  abilityName: 'EntryAbility'
313};
314try {
315  let result: boolean = wifiManager.isWifiDisabled(wantTemp);
316  console.info(`Succeeded in query the wifi is disabled or not, result : ${result}`);
317} catch (err) {
318  console.error(`Failed to query the wifi is disabled or not. Code: ${err.code}, message: ${err.message}`);
319};
320```
321
322## wifiManager.setWifiDisabled<sup>11+</sup>
323
324setWifiDisabled(admin: Want, disabled: boolean): void
325
326设置禁用Wi-Fi策略。
327
328**需要权限:** ohos.permission.ENTERPRISE_MANAGE_WIFI
329
330**系统能力:** SystemCapability.Customization.EnterpriseDeviceManager
331
332**模型约束:** 此接口仅可在Stage模型下使用。
333
334**系统接口:** 此接口为系统接口。
335
336**参数:**
337
338| 参数名     | 类型                                | 必填 | 说明                                      |
339| ---------- | ----------------------------------- | ---- | ----------------------------------------- |
340| admin      | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | 是   | 企业设备管理扩展组件。                            |
341| disabled   | boolean                             | 是   | true表示禁用Wi-Fi,false表示解除Wi-Fi禁用。 |
342
343**错误码:**
344
345以下的错误码的详细介绍请参见[企业设备管理错误码](errorcode-enterpriseDeviceManager.md)和[通用错误码](../errorcode-universal.md)。
346
347| 错误码ID | 错误信息                                                     |
348| -------- | ------------------------------------------------------------ |
349| 9200001  | The application is not an administrator application of the device. |
350| 9200002  | The administrator application does not have permission to manage the device. |
351| 201      | Permission verification failed. The application does not have the permission required to call the API. |
352| 202      | Permission verification failed. A non-system application calls a system API. |
353| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. |
354
355**示例:**
356
357```ts
358import { wifiManager } from '@kit.MDMKit';
359import { Want } from '@kit.AbilityKit';
360
361let wantTemp: Want = {
362  // 需根据实际情况进行替换
363  bundleName: 'com.example.myapplication',
364  abilityName: 'EntryAbility'
365};
366
367try {
368  wifiManager.setWifiDisabled(wantTemp, true);
369  console.info('Succeeded in set the wifi disabled');
370} catch (err) {
371  console.error(`Failed to set the wifi disabled. Code: ${err.code}, message: ${err.message}`);
372};
373```
374