@ohos.wifiManager (WLAN)

The WLAN module provides basic wireless local area network (WLAN) functions, peer-to-peer (P2P) functions, and WLAN message notification services. It allows applications to communicate with devices over WLAN.

NOTE

The initial APIs of this module are supported since API version 6. Newly added APIs will be marked with a superscript to indicate their earliest API version.

Modules to Import

import wifiManager from '@ohos.wifiManager';

wifiManager.isWifiActive9+

isWifiActive(): boolean

Checks whether WLAN is enabled.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Return value

Type Description
boolean Returns true if WLAN is enabled; returns false otherwise.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		let isWifiActive = wifiManager.isWifiActive();
		console.info("isWifiActive:" + isWifiActive);
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

wifiManager.scan9+(deprecated)

scan(): void

Starts a scan for WLAN.

NOTE This API is supported since API version 9 and deprecated since API version 10. The substitute API is available only for system applications.

Required permissions: ohos.permission.SET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION

System capability: SystemCapability.Communication.WiFi.STA

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		wifiManager.scan();
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

wifiManager.getScanResults9+(deprecated)

getScanResults(): Promise<Array<WifiScanInfo>>

Obtains the scan result. This API uses a promise to return the result.

NOTE This API is supported since API version 9 and deprecated since API version 10. Use wifiManager.getScanInfoList instead.

Required permissions: ohos.permission.GET_WIFI_INFO and (ohos.permission.GET_WIFI_PEERS_MAC or (ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION))

System capability: SystemCapability.Communication.WiFi.STA

Return value

Type Description
Promise< Array<WifiScanInfo> > Promise used to return the hotspots detected.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

wifiManager.getScanResults9+(deprecated)

getScanResults(callback: AsyncCallback<Array<WifiScanInfo>>): void

Obtains the scan result. This API uses an asynchronous callback to return the result.

NOTE This API is supported since API version 9 and deprecated since API version 10. Use wifiManager.getScanInfoList instead.

Required permissions: ohos.permission.GET_WIFI_INFO and (ohos.permission.GET_WIFI_PEERS_MAC or (ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION))

System capability: SystemCapability.Communication.WiFi.STA

Parameters

Name Type Mandatory Description
callback AsyncCallback< Array<WifiScanInfo>> Yes Callback invoked to return the result. If the operation is successful, err is 0 and data is the detected hotspots. Otherwise, err is a non-zero value and data is empty.
Array<WifiScanInfo> return the hotspots detected.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

Example

  import wifiManager from '@ohos.wifiManager';
  
  wifiManager.getScanResults((err, result) => {
      if (err) {
          console.error("get scan info error");
          return;
      }
  
      let len = result.length;
      console.log("wifi received scan info: " + len);
      for (let i = 0; i < len; ++i) {
          console.info("ssid: " + result[i].ssid);
          console.info("bssid: " + result[i].bssid);
          console.info("capabilities: " + result[i].capabilities);
          console.info("securityType: " + result[i].securityType);
          console.info("rssi: " + result[i].rssi);
          console.info("band: " + result[i].band);
          console.info("frequency: " + result[i].frequency);
          console.info("channelWidth: " + result[i].channelWidth);
          console.info("timestamp: " + result[i].timestamp);
      }
  });
  
  wifiManager.getScanResults().then(result => {
      let len = result.length;
      console.log("wifi received scan info: " + len);
      for (let i = 0; i < len; ++i) {
          console.info("ssid: " + result[i].ssid);
          console.info("bssid: " + result[i].bssid);
          console.info("capabilities: " + result[i].capabilities);
          console.info("securityType: " + result[i].securityType);
          console.info("rssi: " + result[i].rssi);
          console.info("band: " + result[i].band);
          console.info("frequency: " + result[i].frequency);
          console.info("channelWidth: " + result[i].channelWidth);
          console.info("timestamp: " + result[i].timestamp);
      }
  }).catch((err:number) => {
      console.error("failed:" + JSON.stringify(err));
  });

wifiManager.getScanResultsSync9+(deprecated)

getScanResultsSync():  Array<WifiScanInfo>

Obtains the scan result. This API returns the result synchronously.

NOTE This API is supported since API version 9 and deprecated since API version 10. Use wifiManager.getScanInfoList instead.

Required permissions: ohos.permission.GET_WIFI_INFO and (ohos.permission.GET_WIFI_PEERS_MAC or (ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION))

System capability: SystemCapability.Communication.WiFi.STA

Return value

Type Description
 Array<WifiScanInfo> Scan result obtained.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		let scanInfoList = wifiManager.getScanResultsSync();
		console.info("scanInfoList:" + JSON.stringify(scanInfoList));
		let len = scanInfoList.length;
        console.log("wifi received scan info: " + len);
		if(len > 0){
			for (let i = 0; i < len; ++i) {
				console.info("ssid: " + scanInfoList[i].ssid);
				console.info("bssid: " + scanInfoList[i].bssid);
				console.info("capabilities: " + scanInfoList[i].capabilities);
				console.info("securityType: " + scanInfoList[i].securityType);
				console.info("rssi: " + scanInfoList[i].rssi);
				console.info("band: " + scanInfoList[i].band);
				console.info("frequency: " + scanInfoList[i].frequency);
				console.info("channelWidth: " + scanInfoList[i].channelWidth);
				console.info("timestamp: " + scanInfoList[i].timestamp);
			}
		}	
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}
	

wifiManager.getScanInfoList10+

getScanInfoList(): Array<WifiScanInfo>

Obtains the scanning result.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Return value

Type Description
Array<WifiScanInfo> Hotspots detected. If the application has the ohos.permission.GET_WIFI_PEERS_MAC permission, bssid in the return value is a real device address; otherwise, bssid is a random device address.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		let scanInfoList = wifiManager.getScanInfoList();
		console.info("scanInfoList:" + JSON.stringify(scanInfoList));
		let len = scanInfoList.length;
        console.log("wifi received scan info: " + len);
		if(len > 0){
			for (let i = 0; i < len; ++i) {
				console.info("ssid: " + scanInfoList[i].ssid);
				console.info("bssid: " + scanInfoList[i].bssid);
				console.info("capabilities: " + scanInfoList[i].capabilities);
				console.info("securityType: " + scanInfoList[i].securityType);
				console.info("rssi: " + scanInfoList[i].rssi);
				console.info("band: " + scanInfoList[i].band);
				console.info("frequency: " + scanInfoList[i].frequency);
				console.info("channelWidth: " + scanInfoList[i].channelWidth);
				console.info("timestamp: " + scanInfoList[i].timestamp);
			}
		}	
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}
	

WifiScanInfo9+

Represents WLAN hotspot information.

System capability: SystemCapability.Communication.WiFi.STA

Name Type Readable Writable Description
ssid string Yes No SSID of the hotspot, in UTF-8 format. The maximum length is 32 bytes.
bssid string Yes No Hotspot BSSID, for example, 00:11:22:33:44:55.
bssidType10+ DeviceAddressType Yes No BSSID type of the hotspot.
capabilities string Yes No Hotspot capabilities.
securityType WifiSecurityType Yes No WLAN security type.
rssi number Yes No Received signal strength indicator (RSSI) of the hotspot, in dBm.
band number Yes No Frequency band of the WLAN access point (AP). The value 1 indicates 2.4 GHz, and 2 indicates 5 GHz.
frequency number Yes No Frequency of the WLAN AP.
channelWidth number Yes No Channel width of the WLAN AP. For details, see WifiChannelWidth.
centerFrequency0 number Yes No Center frequency of the hotspot.
centerFrequency1 number Yes No Center frequency of the hotspot. If the hotspot uses two non-overlapping WLAN channels, two center frequencies, namely centerFrequency0 and centerFrequency1, are returned.
infoElems Array<WifiInfoElem> Yes No Information elements.
timestamp number Yes No Timestamp.

DeviceAddressType10+

Enumerates the Wi-Fi device address (MAC/BSSID) types.

System capability: SystemCapability.Communication.WiFi.Core

Name Value Description
RANDOM_DEVICE_ADDRESS 0 Random device address.
REAL_DEVICE_ADDRESS 1 Read device address.

WifiSecurityType9+

Enumerates the WLAN security types.

System capability: SystemCapability.Communication.WiFi.Core

Name Value Description
WIFI_SEC_TYPE_INVALID 0 Invalid security type.
WIFI_SEC_TYPE_OPEN 1 Open security type. The candidate network configuration does not support this encryption type.
WIFI_SEC_TYPE_WEP 2 Wired Equivalent Privacy (WEP). The candidate network configuration does not support this encryption type.
WIFI_SEC_TYPE_PSK 3 Pre-shared key (PSK).
WIFI_SEC_TYPE_SAE 4 Simultaneous Authentication of Equals (SAE).
WIFI_SEC_TYPE_EAP 5 Extensible Authentication protocol (EAP).
WIFI_SEC_TYPE_EAP_SUITE_B 6 Suite B 192-bit encryption.
WIFI_SEC_TYPE_OWE 7 Opportunistic Wireless Encryption (OWE).
WIFI_SEC_TYPE_WAPI_CERT 8 WLAN Authentication and Privacy Infrastructure (WAPI) in certificate-based mode (WAPI-CERT).
WIFI_SEC_TYPE_WAPI_PSK 9 WAPI-PSK.

WifiBandType10+

Enumerates the Wi-Fi band types.

System capability: SystemCapability.Communication.WiFi.STA

Name Value Description
WIFI_BAND_NONE 0 Invalid band type
WIFI_BAND_2G 1 2.4 GHz
WIFI_BAND_5G 2 5 GHz
WIFI_BAND_6G 3 6 GHz
WIFI_BAND_60G 4 60 GHz

WifiStandard10+

Enumerates the Wi-Fi standards.

System capability: SystemCapability.Communication.WiFi.STA

Name Value Description
WIFI_STANDARD_UNDEFINED 0 Invalid Wi-Fi standard
WIFI_STANDARD_11A 1 802.11a
WIFI_STANDARD_11B 2 802.11b
WIFI_STANDARD_11G 3 802.11g
WIFI_STANDARD_11N 4 802.11n
WIFI_STANDARD_11AC 5 802.11ac
WIFI_STANDARD_11AX 6 802.11ax
WIFI_STANDARD_11AD 7 802.11ad

WifiInfoElem9+

Represents a WLAN information element.

System capability: SystemCapability.Communication.WiFi.STA

Name Type Readable Writable Description
eid number Yes No ID of the information element.
content Uint8Array Yes No Content of the information element.

WifiChannelWidth9+

Enumerates the WLAN channel widths.

System capability: SystemCapability.Communication.WiFi.STA

Name Value Description
WIDTH_20MHZ 0 20 MHz
WIDTH_40MHZ 1 40 MHz
WIDTH_80MHZ 2 80 MHz
WIDTH_160MHZ 3 160 MHz
WIDTH_80MHZ_PLUS 4 80 MHz+
WIDTH_INVALID 5 Invalid value

WifiDeviceConfig9+

Represents the WLAN configuration.

System capability: SystemCapability.Communication.WiFi.STA

Name Type Readable Writable Description
ssid string Yes No SSID of the hotspot, in UTF-8 format. The maximum length is 32 bytes.
bssid string Yes No Hotspot BSSID, for example, 00:11:22:33:44:55.
bssidType10+ DeviceAddressType Yes No BSSID type of the hotspot.
preSharedKey string Yes No PSK of the hotspot, which cannot exceed 64 bytes.
When securityType is WIFI_SEC_TYPE_OPEN, this parameter must be an empty string. When securityType is any other value, this parameter cannot be empty.
When securityType is WIFI_SEC_TYPE_WEP, the PSK must be of 5, 10, 13, 26, 16, or 32 bytes. If the PSK length is 10, 26, 16, or 32 bytes, the PSK must be a hexadecimal number.
When securityType is WIFI_SEC_TYPE_SAE, the minimum PSK length is 1 byte. When securityType is WIFI_SEC_TYPE_PSK, the minimum PSK length is 8 bytes.
isHiddenSsid boolean Yes No Whether the network is hidden.
securityType WifiSecurityType Yes No Security type.
eapConfig10+ WifiEapConfig Yes No EAP configuration. This parameter is mandatory only when securityType is WIFI_SEC_TYPE_EAP.

WifiEapConfig10+

Represents EAP configuration information.

System capability: SystemCapability.Communication.WiFi.STA

Name Type Readable Writable Description
eapMethod EapMethod Yes No EAP authentication method.
phase2Method Phase2Method Yes No Phase 2 authentication method. This parameter is mandatory only when eapMethod is EAP_PEAP or EAP_TTLS.
identity string Yes No Identity Information. When eapMethod is EAP_PEAP, EAP_TLS, or EAP_PWD, this parameter cannot be empty.
anonymousIdentity string Yes No Anonymous identity. This prameter is not used currently.
password string Yes No Password. When eapMethod is EAP_PEAP or EAP_PWD, this parameter cannot be empty.
caCertAlias string Yes No CA certificate alias.
caPath string Yes No CA certificate path.
clientCertAlias string Yes No Client certificate alias.
certEntry Uint8Array Yes Yes CA certificate content. If eapMethod is EAP_TLS and this parameter is not specified, clientCertAlias cannot be empty.
certPassword string Yes Yes CA certificate password.
altSubjectMatch string Yes No A string to match the alternate subject.
domainSuffixMatch string Yes No A string to match the domain suffix.
realm string Yes No Realm for the passpoint credential.
plmn string Yes No Public land mobile network (PLMN) of the passpoint credential provider.
eapSubId number Yes No Sub-ID of the SIM card.

EapMethod10+

Enumerates the EAP authentication methods.

System capability: SystemCapability.Communication.WiFi.STA

Name Value Description
EAP_NONE 0 Not specified.
EAP_PEAP 1 PEAP.
EAP_TLS 2 TLS.
EAP_TTLS 3 TTLS.
EAP_PWD 4 Password.
EAP_SIM 5 SIM.
EAP_AKA 6 AKA.
EAP_AKA_PRIME 7 AKA Prime.
EAP_UNAUTH_TLS 8 UNAUTH TLS.

Phase2Method10+

Enumerates the Phase 2 authentication methods.

System capability: SystemCapability.Communication.WiFi.STA

Name Value Description
PHASE2_NONE 0 Not specified.
PHASE2_PAP 1 PAP.
PHASE2_MSCHAP 2 MS-CHAP.
PHASE2_MSCHAPV2 3 MS-CHAPv2.
PHASE2_GTC 4 GTC .
PHASE2_SIM 5 SIM.
PHASE2_AKA 6 AKA.
PHASE2_AKA_PRIME 7 AKA Prime.

wifiManager.addCandidateConfig9+

addCandidateConfig(config: WifiDeviceConfig): Promise<number>

Adds the configuration of a candidate network. This API uses a promise to return the result.

Required permissions: ohos.permission.SET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Parameters

Name Type Mandatory Description
config WifiDeviceConfig Yes WLAN configuration to add. The default bssidType is random device address.

Return value

Type Description
Promise<number> Promise used to return the network configuration ID.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';
	
	try {
		let config:wifiManager.WifiDeviceConfig = {
			ssid : "****",
			preSharedKey : "****",
			securityType : 0
		}
		wifiManager.addCandidateConfig(config).then(result => {
			console.info("result:" + JSON.stringify(result));
		}).catch((err:number) => {
			console.error("failed:" + JSON.stringify(err));
		});
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

wifiManager.addCandidateConfig9+

addCandidateConfig(config: WifiDeviceConfig, callback: AsyncCallback<number>): void

Adds the configuration of a candidate network. This API uses an asynchronous callback to return the result.

Required permissions: ohos.permission.SET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Parameters

Name Type Mandatory Description
config WifiDeviceConfig Yes WLAN configuration to add. The default bssidType is random device address.
callback AsyncCallback<number> Yes Callback invoked to return the result. If the operation is successful, err is 0 and data is the network configuration ID. If data is -1, the candidate network configuration fails to be added. If err is not 0, an error has occurred.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		let config:wifiManager.WifiDeviceConfig = {
			ssid : "****",
			preSharedKey : "****",
			securityType : 0
		}
		wifiManager.addCandidateConfig(config,(error,result) => {
			console.info("result:" + JSON.stringify(result));
		});	
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

wifiManager.removeCandidateConfig9+

removeCandidateConfig(networkId: number): Promise<void>

Removes the configuration of a candidate network. This API uses a promise to return the result.

Required permissions: ohos.permission.SET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Parameters

Name Type Mandatory Description
networkId number Yes ID of the network configuration to remove.

Return value

Type Description
Promise<void> Promise used to return the result.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		let networkId = 0;
		wifiManager.removeCandidateConfig(networkId).then(result => {
			console.info("result:" + JSON.stringify(result));
		}).catch((err:number) => {
			console.error("failed:" + JSON.stringify(err));
		});
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

wifiManager.removeCandidateConfig9+

removeCandidateConfig(networkId: number, callback: AsyncCallback<void>): void

Removes the configuration of a candidate network. This API uses an asynchronous callback to return the result.

Required permissions: ohos.permission.SET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Parameters

Name Type Mandatory Description
networkId number Yes ID of the network configuration to remove.
callback AsyncCallback<void> Yes Callback invoked to return the result. If the operation is successful, err is 0. If the operation fails, error is not 0.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		let networkId = 0;
		wifiManager.removeCandidateConfig(networkId,(error,result) => {
		console.info("result:" + JSON.stringify(result));
		});	
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

wifiManager.getCandidateConfigs9+

getCandidateConfigs():  Array<WifiDeviceConfig>

Obtains candidate network configuration.

Required permissions:

API version 9: ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION

API version 10 and later : ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Return value

Type Description
 Array<WifiDeviceConfig> Candidate network configuration obtained.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		let configs = wifiManager.getCandidateConfigs();
		console.info("configs:" + JSON.stringify(configs));
		let len = configs.length;
        console.log("result len: " + len);
		if(len > 0){
			for (let i = 0; i < len; ++i) {
				console.info("ssid: " + configs[i].ssid);
				console.info("bssid: " + configs[i].bssid);
			}
		}	
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}
	

wifiManager.connectToCandidateConfig9+

connectToCandidateConfig(networkId: number): void

Connects to a candidate network added by the application. If the device is already connected to a hotspot, disconnect it from the hotspot first.

Required permissions: ohos.permission.SET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Parameters

Name Type Mandatory Description
networkId number Yes ID of the candidate network configuration.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.
2501001 Wifi is closed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		let networkId = 0; // Candidate network ID, which is generated when a candidate network is added. The value is obtained from WifiDeviceConfig.netId.
		wifiManager.connectToCandidateConfig(networkId);
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}
	

wifiManager.getSignalLevel9+

getSignalLevel(rssi: number, band: number): number

Obtains the WLAN signal level.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Parameters

Name Type Mandatory Description
rssi number Yes RSSI of the hotspot, in dBm.
band number Yes Frequency band of the WLAN AP. The value 1 indicates 2.4 GHz, and 2 indicates 5 GHz.

Return value

Type Description
number Signal level obtained. The value range is [0, 4].

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		let rssi = 0;
		let band = 0;
		let level = wifiManager.getSignalLevel(rssi,band);
		console.info("level:" + JSON.stringify(level));
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

wifiManager.getLinkedInfo9+

getLinkedInfo(): Promise<WifiLinkedInfo>

Obtains WLAN connection information. This API uses a promise to return the result.

Required permissions: ohos.permission.GET_WIFI_INFO and

If macType is 1 (device MAC address), the caller must also have the ohos.permission.GET_WIFI_LOCAL_MAC permission. If the caller does not have this permission, an empty string will be returned.

System capability: SystemCapability.Communication.WiFi.STA

Return value

Type Description
Promise<WifiLinkedInfo> Promise used to return the WLAN connection information.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.
2501001 Wifi is closed.

wifiManager.getLinkedInfo9+

getLinkedInfo(callback: AsyncCallback<WifiLinkedInfo>): void

Obtains WLAN connection information. This API uses an asynchronous callback to return the result.

Required permissions: ohos.permission.GET_WIFI_INFO and

If macType is 1 (device MAC address), the caller must also have the ohos.permission.GET_WIFI_LOCAL_MAC permission. If the caller does not have this permission, an empty string will be returned.

System capability: SystemCapability.Communication.WiFi.STA

Parameters

Name Type Mandatory Description
callback AsyncCallback<WifiLinkedInfo> Yes Callback invoked to return the result. If the operation is successful, err is 0 and data is the WLAN connection information obtained. If the operation fails, err is not 0.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.
2501001 Wifi is closed.

Example

  import wifiManager from '@ohos.wifiManager';
  
  wifiManager.getLinkedInfo((err, data) => {
      if (err) {
          console.error("get linked info error");
          return;
      }
      console.info("get wifi linked info: " + JSON.stringify(data));
  });
  
  wifiManager.getLinkedInfo().then(data => {
      console.info("get wifi linked info: " + JSON.stringify(data));
  }).catch((error:number) => {
      console.info("get linked info error");
  });

WifiLinkedInfo9+

Represents the WLAN connection information.

System capability: SystemCapability.Communication.WiFi.STA

Name Type Readable Writable Description
ssid string Yes No SSID of the hotspot, in UTF-8 format.
bssid string Yes No BSSID of the hotspot.
rssi number Yes No Hotspot RSSI, in dBm.
band number Yes No Band of the WLAN AP. The value 1 indicates 2.4 GHz, and 2 indicates 5 GHz.
linkSpeed number Yes No Uplink speed of the WLAN AP.
rxLinkSpeed10+ number Yes No Downlink speed of the WLAN AP.
maxSupportedTxLinkSpeed10+ number Yes No Maximum uplink speed supported.
maxSupportedRxLinkSpeed10+ number Yes No Maximum uplink speed supported.
frequency number Yes No Frequency of the WLAN AP.
isHidden boolean Yes No Whether to hide the WLAN AP.
isRestricted boolean Yes No Whether to restrict data volume at the WLAN AP.
macType number Yes No MAC address type.
The value 0 indicates random MAC address, and 1 indicates device MAC address.
macAddress string Yes No MAC address of the device.
ipAddress number Yes No IP address of the device that sets up the WLAN connection.
connState ConnState Yes No WLAN connection state.
channelWidth10+ WifiChannelWidth Yes No Channel bandwidth of the connected hotspot.
wifiStandard10+ WifiStandard Yes No Wi-Fi standard used by the connected hotspot.

ConnState9+

Enumerates the WLAN connection states.

System capability: SystemCapability.Communication.WiFi.STA

Name Value Description
SCANNING 0 The device is scanning for available APs.
CONNECTING 1 A WLAN connection is being established.
AUTHENTICATING 2 An authentication is being performed for a WLAN connection.
OBTAINING_IPADDR 3 The IP address of the WLAN connection is being acquired.
CONNECTED 4 A WLAN connection is established.
DISCONNECTING 5 The WLAN connection is being disconnected.
DISCONNECTED 6 The WLAN connection is disconnected.
UNKNOWN 7 Failed to set up the WLAN connection.

wifiManager.isConnected9+

isConnected(): boolean

Checks whether WLAN is connected.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Return value

Type Description
boolean Returns true if the WLAN is connected; returns false otherwise.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		let ret = wifiManager.isConnected();
		console.info("isConnected:" + ret);
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

wifiManager.isFeatureSupported9+

isFeatureSupported(featureId: number): boolean

Checks whether the device supports the specified WLAN feature.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.Core

Parameters

Name Type Mandatory Description
featureId number Yes Feature ID.

Feature IDs

Value Description
0x0001 WLAN infrastructure mode
0x0002 5 GHz feature
0x0004 Generic Advertisement Service (GAS)/Access Network Query Protocol (ANQP) feature
0x0008 Wi-Fi Direct
0x0010 SoftAP
0x0040 Wi-Fi Aware
0x8000 WLAN AP/STA concurrency
0x8000000 WPA3 Personal (WPA-3 SAE)
0x10000000 WPA3-Enterprise Suite B
0x20000000 Enhanced open feature

Return value

Type Description
boolean Returns true if the feature is supported; returns false otherwise.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2401000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		let featureId = 0;
		let ret = wifiManager.isFeatureSupported(featureId);
		console.info("isFeatureSupported:" + ret);
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

wifiManager.getIpInfo9+

getIpInfo(): IpInfo

Obtains IP information.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Return value

Type Description
IpInfo IP information obtained.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		let info = wifiManager.getIpInfo();
		console.info("info:" + JSON.stringify(info));
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

IpInfo9+

Represents IP information.

System capability: SystemCapability.Communication.WiFi.STA

Name Type Readable Writable Description
ipAddress number Yes No IP address.
gateway number Yes No Gateway.
netmask number Yes No Subnet mask.
primaryDns number Yes No IP address of the preferred DNS server.
secondDns number Yes No IP address of the alternate DNS server.
serverIp number Yes No IP address of the DHCP server.
leaseDuration number Yes No Lease duration of the IP address, in seconds.

wifiManager.getIpv6Info10+

getIpv6Info(): Ipv6Info

Obtains IPv6 information.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Return value

Type Description
Ipv6Info IPv6 information obtained.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		let info = wifiManager.getIpv6Info();
		console.info("info:" + JSON.stringify(info));
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

Ipv6Info 10+

Represents the IPv6 information.

System capability: SystemCapability.Communication.WiFi.STA

Name Type Readable Writable Description
linkIpv6Address string Yes No IPv6 address of the link.
globalIpv6Address string Yes No Global IPv6 address.
randomGlobalIpv6Address string Yes No Random global IPv6 address. This parameter is reserved.
gateway string Yes No Gateway.
netmask string Yes No Subnet mask.
primaryDNS string Yes No IPv6 address of the preferred DNS server.
secondDNS string Yes No IPv6 address of the alternate DNS server.

wifiManager.getCountryCode9+

getCountryCode(): string

Obtains the country code.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.Core

Return value

Type Description
string Country code obtained.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2401000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		let code = wifiManager.getCountryCode();
		console.info("code:" + code);
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

wifiManager.isBandTypeSupported10+

isBandTypeSupported(bandType: WifiBandType): boolean

Checks whether the current frequency band is supported.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Parameters

Name Type Mandatory Description
bandType WifiBandType Yes Wi-Fi band type.

Return value

Type Description
boolean Returns true if the feature is supported; returns false otherwise.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		let type = 0;
		let isBandTypeSupported = wifiManager.isBandTypeSupported(type);
		console.info("isBandTypeSupported:" + isBandTypeSupported);		
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

wifiManager.isMeteredHotspot11+

isMeteredHotspot(): boolean

Checks whether the Wi-Fi network connected to the device is a smartphone hotspot.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Return value

Type Description
boolean Returns true if the Wi-Fi network connected is a smartphone hotspot; returns false otherwise.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		let isMeteredHotspot = wifiManager.isMeteredHotspot();
		console.info("isMeteredHotspot:" + isMeteredHotspot);
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

wifiManager.getP2pLinkedInfo9+

getP2pLinkedInfo(): Promise<WifiP2pLinkedInfo>

Obtains P2P link information. This API uses a promise to return the result.

Required permissions: ohos.permission.GET_WIFI_INFO

To obtain groupOwnerAddr, the caller must also have the ohos.permission.GET_WIFI_LOCAL_MAC permission. If the caller does not have this permission, groupOwnerAddr returned is an all-zero address.

System capability: SystemCapability.Communication.WiFi.P2P

Return value

Type Description
Promise<WifiP2pLinkedInfo> Promise used to return the P2P link information obtained.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

wifiManager.getP2pLinkedInfo9+

getP2pLinkedInfo(callback: AsyncCallback<WifiP2pLinkedInfo>): void

Obtains P2P link information. This API uses an asynchronous callback to return the result.

Required permissions: ohos.permission.GET_WIFI_INFO

To obtain groupOwnerAddr, the caller must also have the ohos.permission.GET_WIFI_LOCAL_MAC permission. If the caller does not have this permission, groupOwnerAddr returned is an all-zero address.

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

Name Type Mandatory Description
callback AsyncCallback<WifiP2pLinkedInfo> Yes Callback invoked to return the result. If the operation is successful, err is 0 and data is the P2P link information. If the operation fails, err is not 0.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	wifiManager.getP2pLinkedInfo((err, data) => {
    if (err) {
        console.error("get p2p linked info error");
        return;
    }
		console.info("get wifi p2p linked info: " + JSON.stringify(data));
	});

	wifiManager.getP2pLinkedInfo().then(data => {
		console.info("get wifi p2p linked info: " + JSON.stringify(data));
	});

WifiP2pLinkedInfo9+

Represents the P2P link information.

System capability: SystemCapability.Communication.WiFi.P2P

Name Type Readable Writable Description
connectState P2pConnectState Yes No P2P connection state.
isGroupOwner boolean Yes No Whether the device is the group owner.
groupOwnerAddr string Yes No IP address of the group.

P2pConnectState9+

Enumerates the P2P connection states.

System capability: SystemCapability.Communication.WiFi.P2P

Name Value Description
DISCONNECTED 0 Disconnected.
CONNECTED 1 Connected.

wifiManager.getCurrentGroup9+

getCurrentGroup(): Promise<WifiP2pGroupInfo>

Obtains the current P2P group information. This API uses a promise to return the result.

Required permissions:

API version 9: ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION

API version 10 and later : ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Return value

Type Description
Promise<WifiP2pGroupInfo> Promise used to return the P2P group information obtained. If the application has the ohos.permission.GET_WIFI_PEERS_MAC permission, deviceAddress in the return value is a real device address; otherwise, deviceAddress is a random device address.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

wifiManager.getCurrentGroup9+

getCurrentGroup(callback: AsyncCallback<WifiP2pGroupInfo>): void

Obtains the current P2P group information. This API uses an asynchronous callback to return the result.

Required permissions:

API version 9: ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION

API version 10 and later : ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

Name Type Mandatory Description
callback AsyncCallback<WifiP2pGroupInfo> Yes Callback invoked to return the result. If the operation is successful, err is 0 and data is the group information obtained. If the operation fails, error is not 0. If the application has the ohos.permission.GET_WIFI_PEERS_MAC permission, deviceAddress in the return value is a real device address; otherwise, deviceAddress is a random device address.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';
	// The group information can be obtained only when the P2P is connected.
	wifiManager.getCurrentGroup((err, data) => {
    if (err) {
        console.error("get current P2P group error");
        return;
    }
		console.info("get current P2P group: " + JSON.stringify(data));
	});

	wifiManager.getCurrentGroup().then(data => {
		console.info("get current P2P group: " + JSON.stringify(data));
	});

wifiManager.getP2pPeerDevices9+

getP2pPeerDevices(): Promise<WifiP2pDevice[]>

Obtains the peer device list in the P2P connection. This API uses a promise to return the result.

Required permissions:

API version 9: ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION

API version 10 and later : ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Return value

Type Description
Promise<WifiP2pDevice[]> Promise used to return the peer device list. If the application has the ohos.permission.GET_WIFI_PEERS_MAC permission, deviceAddress in the return value is a real device address; otherwise, deviceAddress is a random device address.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

wifiManager.getP2pPeerDevices9+

getP2pPeerDevices(callback: AsyncCallback<WifiP2pDevice[]>): void

Obtains the peer device list in the P2P connection. This API uses an asynchronous callback to return the result.

Required permissions:

API version 9: ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION

API version 10 and later : ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

Name Type Mandatory Description
callback AsyncCallback<WifiP2pDevice[]> Yes Callback invoked to return the result. If the operation is successful, err is 0 and data is the peer device list obtained. If the operation fails, err is not 0. If the application has the ohos.permission.GET_WIFI_PEERS_MAC permission, deviceAddress in the return value is a real device address; otherwise, deviceAddress is a random device address.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';
	// The peer device list can be obtained only when the P2P is connected.
	wifiManager.getP2pPeerDevices((err, data) => {
    if (err) {
        console.error("get P2P peer devices error");
        return;
    }
		console.info("get P2P peer devices: " + JSON.stringify(data));
	});

	wifiManager.getP2pPeerDevices().then(data => {
		console.info("get P2P peer devices: " + JSON.stringify(data));
	});

WifiP2pDevice9+

Represents the P2P device information.

System capability: SystemCapability.Communication.WiFi.P2P

Name Type Readable Writable Description
deviceName string Yes No Device name.
deviceAddress string Yes No MAC address of the device.
deviceAddressType10+ DeviceAddressType Yes No MAC address type of the device.
primaryDeviceType string Yes No Type of the primary device.
deviceStatus P2pDeviceStatus Yes No Device status.
groupCapabilities number Yes No Group capabilities.

P2pDeviceStatus9+

Enumerates the P2P device states.

System capability: SystemCapability.Communication.WiFi.P2P

Name Value Description
CONNECTED 0 Connected.
INVITED 1 Invited.
FAILED 2 Failed.
AVAILABLE 3 Available.
UNAVAILABLE 4 Unavailable.

wifiManager.getP2pLocalDevice9+

getP2pLocalDevice(): Promise<WifiP2pDevice>

Obtains the local device information in the P2P connection. This API uses a promise to return the result.

Required permissions: ohos.permission.GET_WIFI_INFO and ohos.permission.GET_WIFI_CONFIG

System capability: SystemCapability.Communication.WiFi.P2P

Return value

Type Description
Promise<WifiP2pDevice> Promise used to return the local device information obtained.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

wifiManager.getP2pLocalDevice9+

getP2pLocalDevice(callback: AsyncCallback<WifiP2pDevice>): void

Obtains the local device information in the P2P connection. This API uses an asynchronous callback to return the result.

Required permissions: ohos.permission.GET_WIFI_INFO and ohos.permission.GET_WIFI_CONFIG

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

Name Type Mandatory Description
callback AsyncCallback<WifiP2pDevice> Yes Callback invoked to return the result. If the operation is successful, err is 0 and data is the local device information obtained. If the operation fails, error is not 0.

Error codes

ID Error Message
2801000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';
	// The local device information can be obtained only when the P2P is connected.
	wifiManager.getP2pLocalDevice((err, data) => {
    if (err) {
        console.error("get P2P local device error");
        return;
    }
		console.info("get P2P local device: " + JSON.stringify(data));
	});

	wifiManager.getP2pLocalDevice().then(data => {
		console.info("get P2P local device: " + JSON.stringify(data));
	});

wifiManager.createGroup9+

createGroup(config: WifiP2PConfig): void

Creates a P2P group.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

Name Type Mandatory Description
config WifiP2PConfig Yes Group configuration. The default DeviceAddressType is random device address.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		let config:wifiManager.WifiP2PConfig = {
			deviceAddress: "****",
			netId: 0,
			passphrase: "*****",
			groupName: "****",
			goBand: 0
		}
		wifiManager.createGroup(config);	
		
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

WifiP2PConfig9+

Represents P2P group configuration.

System capability: SystemCapability.Communication.WiFi.P2P

Name Type Readable Writable Description
deviceAddress string Yes No Device address.
deviceAddressType10+ DeviceAddressType Yes No Device address type.
netId number Yes No Network ID. The value -1 indicates a temporary group, and -2 indicates a persistent group.
passphrase string Yes No Passphrase of the group.
groupName string Yes No Name of the group.
goBand GroupOwnerBand Yes No Frequency band of the group.

GroupOwnerBand9+

Enumerates the P2P group frequency bands.

System capability: SystemCapability.Communication.WiFi.P2P

Name Value Description
GO_BAND_AUTO 0 Auto.
GO_BAND_2GHZ 1 2.4 GHz.
GO_BAND_5GHZ 2 5 GHz.

wifiManager.removeGroup9+

removeGroup(): void

Removes this P2P group.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		wifiManager.removeGroup();	
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

wifiManager.p2pConnect9+

p2pConnect(config: WifiP2PConfig): void

Sets up a P2P connection.

Required permissions:

API version 9: ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION

API version 10 and later : ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

Name Type Mandatory Description
config WifiP2PConfig Yes P2P group configuration. The default DeviceAddressType is random device address.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

Example

  import wifiManager from '@ohos.wifiManager';
  
  let recvP2pConnectionChangeFunc = (result:wifiManager.WifiP2pLinkedInfo) => {
      console.info("p2p connection change receive event: " + JSON.stringify(result));
      wifiManager.getP2pLinkedInfo((err, data) => {
          if (err) {
              console.error('failed to get getP2pLinkedInfo: ' + JSON.stringify(err));
              return;
          }
          console.info("get getP2pLinkedInfo: " + JSON.stringify(data));
      });
  }
  wifiManager.on("p2pConnectionChange", recvP2pConnectionChangeFunc);
  
  let recvP2pDeviceChangeFunc = (result:wifiManager.WifiP2pDevice) => {
      console.info("p2p device change receive event: " + JSON.stringify(result));
  }
  wifiManager.on("p2pDeviceChange", recvP2pDeviceChangeFunc);
  
  let recvP2pPeerDeviceChangeFunc = (result:wifiManager.WifiP2pDevice[]) => {
      console.info("p2p peer device change receive event: " + JSON.stringify(result));
      wifiManager.getP2pPeerDevices((err, data) => {
          if (err) {
              console.error('failed to get peer devices: ' + JSON.stringify(err));
              return;
          }
          console.info("get peer devices: " + JSON.stringify(data));
          let len = data.length;
          for (let i = 0; i < len; ++i) {
              if (data[i].deviceName === "my_test_device") {
                  console.info("p2p connect to test device: " + data[i].deviceAddress);
                  let config:wifiManager.WifiP2PConfig = {
                      deviceAddress:data[i].deviceAddress,
                      netId:-2,
                      passphrase:"",
                      groupName:"",
                      goBand:0,
                  }
                  wifiManager.p2pConnect(config);
              }
          }
      });
  }
  wifiManager.on("p2pPeerDeviceChange", recvP2pPeerDeviceChangeFunc);
  
  let recvP2pPersistentGroupChangeFunc = () => {
      console.info("p2p persistent group change receive event");
  
      wifiManager.getCurrentGroup((err, data) => {
          if (err) {
              console.error('failed to get current group: ' + JSON.stringify(err));
              return;
          }
          console.info("get current group: " + JSON.stringify(data));
      });
  }
  wifiManager.on("p2pPersistentGroupChange", recvP2pPersistentGroupChangeFunc);
  
  setTimeout(() => {wifiManager.off("p2pConnectionChange", recvP2pConnectionChangeFunc);}, 125 * 1000);
  setTimeout(() =>  {wifiManager.off("p2pDeviceChange", recvP2pDeviceChangeFunc);}, 125 * 1000);
  setTimeout(() =>  {wifiManager.off("p2pPeerDeviceChange", recvP2pPeerDeviceChangeFunc);}, 125 * 1000);
  setTimeout(() =>  {wifiManager.off("p2pPersistentGroupChange", recvP2pPersistentGroupChangeFunc);}, 125 * 1000);
  console.info("start discover devices -> " + wifiManager.startDiscoverDevices());

wifiManager.p2pCancelConnect9+

p2pCancelConnect(): void

Cancels this P2P connection.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		wifiManager.p2pCancelConnect();	
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

wifiManager.startDiscoverDevices9+

startDiscoverDevices(): void

Starts to discover devices.

Required permissions:

API version 9: ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION

API version 10 and later : ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		wifiManager.startDiscoverDevices();	
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

wifiManager.stopDiscoverDevices9+

stopDiscoverDevices(): void

Stops discovering devices.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

Example

	import wifiManager from '@ohos.wifiManager';

	try {
		wifiManager.stopDiscoverDevices();	
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}

WifiP2pGroupInfo9+

Represents the P2P group information.

System capability: SystemCapability.Communication.WiFi.P2P

Name Type Readable Writable Description
isP2pGo boolean Yes No Whether the device is the group owner.
ownerInfo WifiP2pDevice Yes No Device information of the group.
passphrase string Yes No Passphrase of the group.
interface string Yes No Interface name.
groupName string Yes No Group name.
networkId number Yes No Network ID.
frequency number Yes No Frequency of the group.
clientDevices WifiP2pDevice[] Yes No List of connected devices.
goIpAddress string Yes No IP address of the group.

wifiManager.on('wifiStateChange')9+

on(type: "wifiStateChange", callback: Callback<number>): void

Subscribes to WLAN state changes.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of wifiStateChange.
callback Callback<number> Yes Callback invoked to return the WLAN state.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

WLAN states

Value Description
0 Deactivated
1 Activated
2 Activating
3 Deactivating

wifiManager.off('wifiStateChange')9+

off(type: "wifiStateChange", callback?: Callback<number>): void

Unsubscribes from WLAN state changes.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of wifiStateChange.
callback Callback<number> No Callback to unregister. If this parameter is not specified, this API unregisters all callbacks for the specified event .

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

Example

  import wifiManager from '@ohos.wifiManager';
  
  let recvPowerNotifyFunc = (result:number) => {
      console.info("Receive power state change event: " + result);
  }
  
  // Register an event.
  wifiManager.on("wifiStateChange", recvPowerNotifyFunc);
  
  // Unregister an event.
  wifiManager.off("wifiStateChange", recvPowerNotifyFunc);

wifiManager.on('wifiConnectionChange')9+

on(type: "wifiConnectionChange", callback: Callback<number>): void

Subscribes to WLAN connection state changes.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of wifiConnectionChange.
callback Callback<number> Yes Callback invoked to return the WLAN connection state.

WLAN connection states

Value Description
0 Disconnected.
1 Connected.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

wifiManager.off('wifiConnectionChange')9+

off(type: "wifiConnectionChange", callback?: Callback<number>): void

Unsubscribes from WLAN connection state changes.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of wifiConnectionChange.
callback Callback<number> No Callback to unregister. If this parameter is not specified, this API unregisters all callbacks for the specified event .

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

Example

  import wifiManager from '@ohos.wifiManager';
  
  let recvWifiConnectionChangeFunc = (result:number) => {
      console.info("Receive wifi connection change event: " + result);
  }
  
  // Register an event.
  wifiManager.on("wifiConnectionChange", recvWifiConnectionChangeFunc);
  
  // Unregister an event.
  wifiManager.off("wifiConnectionChange", recvWifiConnectionChangeFunc);

wifiManager.on('wifiScanStateChange')9+

on(type: "wifiScanStateChange", callback: Callback<number>): void

Subscribes to WLAN scan state changes.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of wifiScanStateChange.
callback Callback<number> Yes Callback invoked to return the WLAN scan state.

WLAN scan states

Value Description
0 Scan failed.
1 Scan successful.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

wifiManager.off('wifiScanStateChange')9+

off(type: "wifiScanStateChange", callback?: Callback<number>): void

Unsubscribes from WLAN scan state changes.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of wifiScanStateChange.
callback Callback<number> No Callback to unregister. If this parameter is not specified, this API unregisters all callbacks for the specified event .

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

Example

  import wifiManager from '@ohos.wifiManager';
  
  let recvWifiScanStateChangeFunc = (result:number) => {
      console.info("Receive Wifi scan state change event: " + result);
  }
  
  // Register an event.
  wifiManager.on("wifiScanStateChange", recvWifiScanStateChangeFunc);
  
  // Unregister an event.
  wifiManager.off("wifiScanStateChange", recvWifiScanStateChangeFunc);

wifiManager.on('wifiRssiChange')9+

on(type: "wifiRssiChange", callback: Callback<number>): void

Subscribes to RSSI changes.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of wifiRssiChange.
callback Callback<number> Yes Callback invoked to return the RSSI, in dBm.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

wifiManager.off('wifiRssiChange')9+

off(type: "wifiRssiChange", callback?: Callback<number>): void

Unsubscribes from RSSI changes.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of wifiRssiChange.
callback Callback<number> No Callback to unregister. If this parameter is not specified, this API unregisters all callbacks for the specified event .

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2501000 Operation failed.

Example

  import wifiManager from '@ohos.wifiManager';
  
  let recvWifiRssiChangeFunc = (result:number) => {
      console.info("Receive wifi rssi change event: " + result);
  }
  
  // Register an event.
  wifiManager.on("wifiRssiChange", recvWifiRssiChangeFunc);
  
  // Unregister an event.
  wifiManager.off("wifiRssiChange", recvWifiRssiChangeFunc);

wifiManager.on('hotspotStateChange')9+

on(type: "hotspotStateChange", callback: Callback<number>): void

Subscribes to hotspot state changes.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.AP.Core

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of hotspotStateChange.
callback Callback<number> Yes Callback invoked to return the hotspot state.

Hotspot states

Value Description
0 Deactivated
1 Activated
2 Activating
3 Deactivating

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2601000 Operation failed.

wifiManager.off('hotspotStateChange')9+

off(type: "hotspotStateChange", callback?: Callback<number>): void

Unsubscribes from hotspot state changes.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.AP.Core

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of hotspotStateChange.
callback Callback<number> No Callback to unregister. If this parameter is not specified, this API unregisters all callbacks for the specified event .

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2601000 Operation failed.

Example

  import wifiManager from '@ohos.wifiManager';
  
  let recvHotspotStateChangeFunc = (result:number) => {
      console.info("Receive hotspot state change event: " + result);
  }
  
  // Register an event.
  wifiManager.on("hotspotStateChange", recvHotspotStateChangeFunc);
  
  // Unregister an event.
  wifiManager.off("hotspotStateChange", recvHotspotStateChangeFunc);

wifiManager.on('p2pStateChange')9+

on(type: "p2pStateChange", callback: Callback<number>): void

Subscribes to P2P state changes.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of p2pStateChange.
callback Callback<number> Yes Callback invoked to return the P2P state change.

P2P states

Value Description
1 Available
2 Opening
3 Opened
4 Closing
5 Closed

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

wifiManager.off('p2pStateChange')9+

off(type: "p2pStateChange", callback?: Callback<number>): void

Unsubscribes from P2P state changes.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of p2pStateChange.
callback Callback<number> No Callback to unregister. If this parameter is not specified, this API unregisters all callbacks for the specified event .

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

Example

  import wifiManager from '@ohos.wifiManager';
  
  let recvP2pStateChangeFunc = (result:number) => {
      console.info("Receive p2p state change event: " + result);
  }
  
  // Register an event.
  wifiManager.on("p2pStateChange", recvP2pStateChangeFunc);
  
  // Unregister an event.
  wifiManager.off("p2pStateChange", recvP2pStateChangeFunc);

wifiManager.on('p2pConnectionChange')9+

on(type: "p2pConnectionChange", callback: Callback<WifiP2pLinkedInfo>): void

Subscribes to P2P connection state changes.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of p2pConnectionChange.
callback Callback<WifiP2pLinkedInfo> Yes Callback invoked to return the P2P connection state change.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

wifiManager.off('p2pConnectionChange')9+

off(type: "p2pConnectionChange", callback?: Callback<WifiP2pLinkedInfo>): void

Unsubscribes from P2P connection state changes.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of p2pConnectionChange.
callback Callback<WifiP2pLinkedInfo> No Callback to unregister. If this parameter is not specified, this API unregisters all callbacks for the specified event .

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

Example

  import wifiManager from '@ohos.wifiManager';
  
  let recvP2pConnectionChangeFunc = (result:wifiManager.WifiP2pLinkedInfo) => {
      console.info("Receive p2p connection change event: " + result);
  }
  
  // Register an event.
  wifiManager.on("p2pConnectionChange", recvP2pConnectionChangeFunc);
  
  // Unregister an event.
  wifiManager.off("p2pConnectionChange", recvP2pConnectionChangeFunc);

wifiManager.on('p2pDeviceChange')9+

on(type: "p2pDeviceChange", callback: Callback<WifiP2pDevice>): void

Subscribes to P2P device state changes.

Required permissions:

API version 9: ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION

API version 10 and later : ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of p2pDeviceChange.
callback Callback<WifiP2pDevice> Yes Callback invoked to return the device state change.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

wifiManager.off('p2pDeviceChange')9+

off(type: "p2pDeviceChange", callback?: Callback<WifiP2pDevice>): void

Unsubscribes from P2P device state changes.

Required permissions:

API version 9: ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION

API version 10 and later: No permission is required.

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of p2pDeviceChange.
callback Callback<WifiP2pDevice> No Callback to unregister. If this parameter is not specified, this API unregisters all callbacks for the specified event .

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

Example

  import wifiManager from '@ohos.wifiManager';
  
  let recvP2pDeviceChangeFunc = (result:wifiManager.WifiP2pDevice) => {
      console.info("Receive p2p device change event: " + result);
  }
  
  // Register an event.
  wifiManager.on("p2pDeviceChange", recvP2pDeviceChangeFunc);
  
  // Unregister an event.
  wifiManager.off("p2pDeviceChange", recvP2pDeviceChangeFunc);

wifiManager.on('p2pPeerDeviceChange')9+

on(type: "p2pPeerDeviceChange", callback: Callback<WifiP2pDevice[]>): void

Subscribes to P2P peer device state changes.

Required permissions:

API version 9: ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION

API version 10 and later : ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of p2pPeerDeviceChange.
callback Callback<WifiP2pDevice[]> Yes Callback invoked to return the P2P peer device state change. If the application has the ohos.permission.GET_WIFI_PEERS_MAC permission, deviceAddress in the return value is a real device address; otherwise, deviceAddress is a random device address.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

wifiManager.off('p2pPeerDeviceChange')9+

off(type: "p2pPeerDeviceChange", callback?: Callback<WifiP2pDevice[]>): void

Unsubscribes from P2P peer device state changes.

Required permissions:

API version 9: ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION

API version 10 and later: No permission is required.

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of p2pPeerDeviceChange.
callback Callback<WifiP2pDevice[]> No Callback to unregister. If this parameter is not specified, this API unregisters all callbacks for the specified event . If the application has the ohos.permission.GET_WIFI_PEERS_MAC permission, deviceAddress in the return value is a real device address; otherwise, deviceAddress is a random device address.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

Example

  import wifiManager from '@ohos.wifiManager';
  
  let recvP2pPeerDeviceChangeFunc = (result:wifiManager.WifiP2pDevice[]) => {
      console.info("Receive p2p peer device change event: " + result);
  }
  
  // Register an event.
  wifiManager.on("p2pPeerDeviceChange", recvP2pPeerDeviceChangeFunc);
  
  // Unregister an event.
  wifiManager.off("p2pPeerDeviceChange", recvP2pPeerDeviceChangeFunc);

wifiManager.on('p2pPersistentGroupChange')9+

on(type: "p2pPersistentGroupChange", callback: Callback<void>): void

Subscribes to P2P persistent group state changes.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of p2pPersistentGroupChange.
callback Callback<void> Yes Callback invoked to return the P2P persistent group state change.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

wifiManager.off('p2pPersistentGroupChange')9+

off(type: "p2pPersistentGroupChange", callback?: Callback<void>): void

Unsubscribes from P2P persistent group state changes.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of p2pPersistentGroupChange.
callback Callback<void> No Callback to unregister. If this parameter is not specified, this API unregisters all callbacks for the specified event .

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

Example

  import wifiManager from '@ohos.wifiManager';
  
  let recvP2pPersistentGroupChangeFunc = (result:void) => {
      console.info("Receive p2p persistent group change event: " + result);
  }
  
  // Register an event.
  wifiManager.on("p2pPersistentGroupChange", recvP2pPersistentGroupChangeFunc);
  
  // Unregister an event.
  wifiManager.off("p2pPersistentGroupChange", recvP2pPersistentGroupChangeFunc);

wifiManager.on('p2pDiscoveryChange')9+

on(type: "p2pDiscoveryChange", callback: Callback<number>): void

Subscribes to P2P device discovery state changes.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of p2pDiscoveryChange.
callback Callback<number> Yes Callback invoked to return the P2P device discovery state change.

P2P discovered device states

Value Description
0 Initial state.
1 Discovered.

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

wifiManager.off('p2pDiscoveryChange')9+

off(type: "p2pDiscoveryChange", callback?: Callback<number>): void

Unsubscribes from P2P device discovery state changes.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

Name Type Mandatory Description
type string Yes Event type, which has a fixed value of p2pDiscoveryChange.
callback Callback<number> No Callback to unregister. If this parameter is not specified, this API unregisters all callbacks for the specified event .

Error codes

For details about the error codes, see Wi-Fi Error Codes.

ID Error Message
2801000 Operation failed.

Example

  import wifiManager from '@ohos.wifiManager';
  
  let recvP2pDiscoveryChangeFunc = (result:number) => {
      console.info("Receive p2p discovery change event: " + result);
  }
  
  // Register an event.
  wifiManager.on("p2pDiscoveryChange", recvP2pDiscoveryChangeFunc);
  
  // Unregister an event.
  wifiManager.off("p2pDiscoveryChange", recvP2pDiscoveryChangeFunc);