1 # @ohos.enterprise.wifiManager (Wi-Fi Management) (System API) 2 3 The **wifiManager** module provides APIs for Wi-Fi management of enterprise devices. 4 5 > **NOTE** 6 > 7 > The initial APIs of this module are supported since API version 10. Newly added APIs will be marked with a superscript to indicate their earliest API version. 8 > 9 > The APIs of this module can be used only in the stage model. 10 > 11 > The APIs of this module can be called only by a [device administrator application](../../mdm/mdm-kit-guide.md#introduction) that is [enabled](js-apis-enterprise-adminManager-sys.md#adminmanagerenableadmin). 12 > 13 > This topic describes only the system APIs provided by the module. For details about its public APIs, see [@ohos.enterprise.wifiManager](js-apis-enterprise-wifiManager.md). 14 15 ## Modules to Import 16 17 ```ts 18 import { wifiManager } from '@kit.MDMKit'; 19 ``` 20 21 ## wifiManager.isWifiActive 22 23 isWifiActive(admin: Want, callback: AsyncCallback<boolean>): void 24 25 Checks whether Wi-Fi is active through the specified device administrator application. This API uses an asynchronous callback to return the result. 26 27 **Required permissions**: ohos.permission.ENTERPRISE_SET_WIFI 28 29 **System capability**: SystemCapability.Customization.EnterpriseDeviceManager 30 31 32 33 **Parameters** 34 35 | Name | Type | Mandatory | Description | 36 | -------- | ---------------------------------------- | ---- | ------------------------------- | 37 | admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | Yes | Device administrator application. | 38 | callback | AsyncCallback<boolean> | Yes | Callback used to return the result. If the operation is successful, **err** is **null** and **data** is a Boolean value (**true** indicates that Wi-Fi is active; and **false** indicates that Wi-Fi is inactive). If the operation fails, **err** is an error object. | 39 40 **Error codes** 41 42 For details about the error codes, see [Enterprise Device Management Error Codes](errorcode-enterpriseDeviceManager.md) and [Universal Error Codes](../errorcode-universal.md). 43 44 | ID| Error Message | 45 | ------- | ---------------------------------------------------------------------------- | 46 | 9200001 | The application is not an administrator application of the device. | 47 | 9200002 | The administrator application does not have permission to manage the device. | 48 | 201 | Permission verification failed. The application does not have the permission required to call the API. | 49 | 202 | Permission verification failed. A non-system application calls a system API. | 50 | 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 51 52 **Example** 53 54 ```ts 55 import { Want } from '@kit.AbilityKit'; 56 let wantTemp: Want = { 57 bundleName: 'com.example.myapplication', 58 abilityName: 'EntryAbility', 59 }; 60 61 wifiManager.isWifiActive(wantTemp, (err, result) => { 62 if (err) { 63 console.error(`Failed to query is wifi active or not. Code: ${err.code}, message: ${err.message}`); 64 return; 65 } 66 console.info(`Succeeded in query is wifi active or not, result : ${result}`); 67 }); 68 ``` 69 70 ## wifiManager.isWifiActive 71 72 isWifiActive(admin: Want): Promise<boolean> 73 74 Checks whether Wi-Fi is active through the specified device administrator application. This API uses a promise to return the result. 75 76 **Required permissions**: ohos.permission.ENTERPRISE_SET_WIFI 77 78 **System capability**: SystemCapability.Customization.EnterpriseDeviceManager 79 80 81 82 **Parameters** 83 84 | Name | Type | Mandatory | Description | 85 | ----- | ----------------------------------- | ---- | ------- | 86 | admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | Yes | Device administrator application.| 87 88 **Return value** 89 90 | Type | Description | 91 | --------------------- | ------------------------- | 92 | Promise<boolean> | Promise used to return the result. The value **true** indicates that Wi-Fi is active, and the value **false** indicates that Wi-Fi is inactive. | 93 94 **Error codes** 95 96 For details about the error codes, see [Enterprise Device Management Error Codes](errorcode-enterpriseDeviceManager.md) and [Universal Error Codes](../errorcode-universal.md). 97 98 | ID| Error Message | 99 | ------- | ---------------------------------------------------------------------------- | 100 | 9200001 | The application is not an administrator application of the device. | 101 | 9200002 | The administrator application does not have permission to manage the device. | 102 | 201 | Permission verification failed. The application does not have the permission required to call the API. | 103 | 202 | Permission verification failed. A non-system application calls a system API. | 104 | 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 105 106 **Example** 107 108 ```ts 109 import { Want } from '@kit.AbilityKit'; 110 import { BusinessError } from '@kit.BasicServicesKit'; 111 let wantTemp: Want = { 112 bundleName: 'com.example.myapplication', 113 abilityName: 'EntryAbility', 114 }; 115 116 wifiManager.isWifiActive(wantTemp).then((result) => { 117 console.info(`Succeeded in query is wifi active or not, result : ${result}`); 118 }).catch((err: BusinessError) => { 119 console.error(`Failed to query is wifi active or not. Code: ${err.code}, message: ${err.message}`); 120 }); 121 ``` 122 123 ## wifiManager.setWifiProfile 124 125 setWifiProfile(admin: Want, profile: WifiProfile, callback: AsyncCallback<void>): void 126 127 Sets Wi-Fi profile through the specified device administrator application to enable the device to connect to the specified network. This API uses an asynchronous callback to return the result. 128 129 **Required permissions**: ohos.permission.ENTERPRISE_SET_WIFI 130 131 **System capability**: SystemCapability.Customization.EnterpriseDeviceManager 132 133 134 135 **Parameters** 136 137 | Name | Type | Mandatory | Description | 138 | -------- | ---------------------------------------- | ---- | ------------------------------- | 139 | admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | Yes | Device administrator application. | 140 | profile | [WifiProfile](js-apis-enterprise-wifiManager.md#wifiprofile) | Yes | Wi-Fi profile information. | 141 | callback | AsyncCallback<void> | Yes | Callback used to return the result. If the operation is successful, **err** is **null**. Otherwise, **err** is an error object. | 142 143 **Error codes** 144 145 For details about the error codes, see [Enterprise Device Management Error Codes](errorcode-enterpriseDeviceManager.md) and [Universal Error Codes](../errorcode-universal.md). 146 147 | ID| Error Message | 148 | ------- | ---------------------------------------------------------------------------- | 149 | 9200001 | The application is not an administrator application of the device. | 150 | 9200002 | The administrator application does not have permission to manage the device. | 151 | 201 | Permission verification failed. The application does not have the permission required to call the API. | 152 | 202 | Permission verification failed. A non-system application calls a system API. | 153 | 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 154 155 **Example** 156 157 ```ts 158 import { Want } from '@kit.AbilityKit'; 159 let wantTemp: Want = { 160 bundleName: 'com.example.myapplication', 161 abilityName: 'EntryAbility', 162 }; 163 let profile: wifiManager.WifiProfile = { 164 'ssid': 'name', 165 'preSharedKey': 'passwd', 166 'securityType': wifiManager.WifiSecurityType.WIFI_SEC_TYPE_PSK 167 }; 168 169 wifiManager.setWifiProfile(wantTemp, profile, (err) => { 170 if (err) { 171 console.error(`Failed to set wifi profile. Code: ${err.code}, message: ${err.message}`); 172 return; 173 } 174 console.info('Succeeded in setting wifi profile'); 175 }); 176 ``` 177 178 ## wifiManager.setWifiProfile 179 180 setWifiProfile(admin: Want, profile: WifiProfile): Promise<void> 181 182 Sets Wi-Fi profile through the specified device administrator application to enable the device to connect to the specified network. This API uses a promise to return the result. 183 184 **Required permissions**: ohos.permission.ENTERPRISE_SET_WIFI 185 186 **System capability**: SystemCapability.Customization.EnterpriseDeviceManager 187 188 189 190 **Parameters** 191 192 | Name | Type | Mandatory | Description | 193 | ----- | ----------------------------------- | ---- | ------- | 194 | admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | Yes | Device administrator application.| 195 | profile | [WifiProfile](js-apis-enterprise-wifiManager.md#wifiprofile) | Yes | Wi-Fi profile information. | 196 197 **Return value** 198 199 | Type | Description | 200 | --------------------- | ------------------------- | 201 | Promise<void> | Promise that returns no value. If the operation fails, an error object will be thrown.| 202 203 **Error codes** 204 205 For details about the error codes, see [Enterprise Device Management Error Codes](errorcode-enterpriseDeviceManager.md) and [Universal Error Codes](../errorcode-universal.md). 206 207 | ID| Error Message | 208 | ------- | ---------------------------------------------------------------------------- | 209 | 9200001 | The application is not an administrator application of the device. | 210 | 9200002 | The administrator application does not have permission to manage the device. | 211 | 201 | Permission verification failed. The application does not have the permission required to call the API. | 212 | 202 | Permission verification failed. A non-system application calls a system API. | 213 | 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 214 215 **Example** 216 217 ```ts 218 import { Want } from '@kit.AbilityKit'; 219 import { BusinessError } from '@kit.BasicServicesKit'; 220 let wantTemp: Want = { 221 bundleName: 'com.example.myapplication', 222 abilityName: 'EntryAbility', 223 }; 224 let profile: wifiManager.WifiProfile = { 225 'ssid': 'name', 226 'preSharedKey': 'passwd', 227 'securityType': wifiManager.WifiSecurityType.WIFI_SEC_TYPE_PSK 228 }; 229 230 wifiManager.setWifiProfile(wantTemp, profile).then(() => { 231 console.info('Succeeded in setting wifi profile'); 232 }).catch((err: BusinessError) => { 233 console.error(`Failed to set wifi profile. Code: ${err.code}, message: ${err.message}`); 234 }); 235 ``` 236 237 ## wifiManager.isWifiDisabled<sup>11+</sup> 238 239 isWifiDisabled(admin: Want): boolean 240 241 Checks whether Wi-Fi is disabled through the specified device administrator application. 242 243 **Required permissions**: ohos.permission.ENTERPRISE_MANAGE_WIFI 244 245 **System capability**: SystemCapability.Customization.EnterpriseDeviceManager 246 247 **System API**: This is a system API. 248 249 **Parameters** 250 251 | Name | Type | Mandatory | Description | 252 | ----- | ----------------------------------- | ---- | ------- | 253 | admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | Yes | Device administrator application.| 254 255 **Return value** 256 257 | Type | Description | 258 | --------------------- | ------------------------- | 259 | boolean | Returns **true** if Wi-Fi is disabled; returns **false** otherwise.| 260 261 **Error codes** 262 263 For details about the error codes, see [Enterprise Device Management Error Codes](errorcode-enterpriseDeviceManager.md) and [Universal Error Codes](../errorcode-universal.md). 264 265 | ID| Error Message | 266 | ------- | ---------------------------------------------------------------------------- | 267 | 9200001 | The application is not an administrator application of the device. | 268 | 9200002 | The administrator application does not have permission to manage the device. | 269 | 201 | Permission verification failed. The application does not have the permission required to call the API. | 270 | 202 | Permission verification failed. A non-system application calls a system API. | 271 | 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 272 273 **Example** 274 275 ```ts 276 import { Want } from '@kit.AbilityKit'; 277 let wantTemp: Want = { 278 bundleName: 'com.example.myapplication', 279 abilityName: 'EntryAbility', 280 }; 281 try { 282 let result: boolean = wifiManager.isWifiDisabled(wantTemp); 283 console.info(`Succeeded in query the wifi is disabled or not, result : ${result}`); 284 } catch (err) { 285 console.error(`Failed to query the wifi is disabled or not. Code: ${err.code}, message: ${err.message}`); 286 }; 287 ``` 288 289 ## wifiManager.setWifiDisabled<sup>11+</sup> 290 291 setWifiDisabled(admin: Want, disabled: boolean): void 292 293 Sets the Wi-Fi policy through the specified device administrator application. 294 295 **Required permissions**: ohos.permission.ENTERPRISE_MANAGE_WIFI 296 297 **System capability**: SystemCapability.Customization.EnterpriseDeviceManager 298 299 **System API**: This is a system API. 300 301 **Parameters** 302 303 | Name | Type | Mandatory| Description | 304 | ---------- | ----------------------------------- | ---- | ----------------------------------------- | 305 | admin | [Want](../apis-ability-kit/js-apis-app-ability-want.md) | Yes | Device administrator application. | 306 | disabled | boolean | Yes | Whether to disable Wi-Fi. The value **true** means to disable Wi-Fi; the value **false** means the opposite.| 307 308 **Error codes** 309 310 For details about the error codes, see [Enterprise Device Management Error Codes](errorcode-enterpriseDeviceManager.md) and [Universal Error Codes](../errorcode-universal.md). 311 312 | ID| Error Message | 313 | -------- | ------------------------------------------------------------ | 314 | 9200001 | The application is not an administrator application of the device. | 315 | 9200002 | The administrator application does not have permission to manage the device. | 316 | 201 | Permission verification failed. The application does not have the permission required to call the API. | 317 | 202 | Permission verification failed. A non-system application calls a system API. | 318 | 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. | 319 320 **Example** 321 322 ```ts 323 import { Want } from '@kit.AbilityKit'; 324 let wantTemp: Want = { 325 bundleName: 'com.example.myapplication', 326 abilityName: 'EntryAbility', 327 }; 328 329 try { 330 wifiManager.setWifiDisabled(wantTemp, true); 331 console.info('Succeeded in set the wifi disabled'); 332 } catch (err) { 333 console.error(`Failed to set the wifi disabled. Code: ${err.code}, message: ${err.message}`); 334 }; 335 ``` 336