openharmony 鸿蒙 js-apis-wifiManager

2025-06-12 浏览 (1)

@ohos.wifiManager (WLAN)

The wifiManager module provides basic WLAN functionalities (such as wireless access, wireless encryption, and wireless roaming), basic peer-to-peer (P2P) services, and WLAN notification services. It allows applications to interact with other devices through WLAN.

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

Modules to Import

import { wifiManager } from '@kit.ConnectivityKit';

wifiManager.isWifiActive9+

isWifiActive(): boolean

Checks whether WLAN is enabled.

Atomic service API: This API can be used in atomic services since API version 11.

System capability: SystemCapability.Communication.WiFi.STA

Return value

TypeDescription
booleanReturns true if WLAN is enabled; returns false otherwise.

Error codes

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

IDError Message
801Capability not supported.
2501000Operation failed.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

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

wifiManager.enableWifi15+

enableWifi(): void

Enables the WLAN.

Required permissions: ohos.permission.SET_WIFI_INFO and ohos.permission.MANAGE_WIFI_CONNECTION (available only to system applications) or ohos.permission.MANAGE_ENTERPRISE_WIFI_CONNECTION (available only to enterprise applications)

System capability: SystemCapability.Communication.WiFi.STA

Error codes

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

IDError Message
201Permission denied.
801Capability not supported.
2501000Operation failed.
2501003Operation failed because the service is being closed.

Example

  import { wifiManager } from '@kit.ConnectivityKit';
  
  try {
    wifiManager.enableWifi();
  }catch(error){
    console.error("failed:" + JSON.stringify(error));
  }

wifiManager.scan9+(deprecated)

scan(): void

Starts WLAN scanning. Note that WLAN must have been enabled.

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.

IDError Message
201Permission denied.
801Capability not supported.
2501000Operation failed.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

	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)) ohos.permission.GET_WIFI_PEERS_MAC is available only for system applications.

System capability: SystemCapability.Communication.WiFi.STA

Return value

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

Error codes

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

IDError Message
201Permission denied.
801Capability not supported.
2501000Operation 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)) ohos.permission.GET_WIFI_PEERS_MAC is available only for system applications.

System capability: SystemCapability.Communication.WiFi.STA

Parameters

NameTypeMandatoryDescription
callbackAsyncCallback< Array<WifiScanInfo>>YesCallback used 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.

Error codes

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

IDError Message
201Permission denied.
801Capability not supported.
2501000Operation failed.

Example

  import { wifiManager } from '@kit.ConnectivityKit';
  
  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)) ohos.permission.GET_WIFI_PEERS_MAC is available only for system applications.

System capability: SystemCapability.Communication.WiFi.STA

Return value

TypeDescription
 Array<WifiScanInfo>Scan result obtained.

Error codes

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

IDError Message
201Permission denied.
801Capability not supported.
2501000Operation failed.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

	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

Atomic service API: This API can be used in atomic services since API version 12.

System capability: SystemCapability.Communication.WiFi.STA

Return value

TypeDescription
Array<WifiScanInfo>Hotspots detected. If the caller has the ohos.permission.GET_WIFI_PEERS_MAC permission (available only for system applications), 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.

IDError Message
201Permission denied.
801Capability not supported.
2501000Operation failed.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

	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);
				console.info("supportedWifiCategory: " + scanInfoList[i].supportedWifiCategory);
				console.info("isHiLinkNetwork: " + scanInfoList[i].isHiLinkNetwork);
			}
		}	
	}catch(error){
		console.error("failed:" + JSON.stringify(error));
	}
	

WifiScanInfo9+

Represents WLAN hotspot information.

System capability: SystemCapability.Communication.WiFi.STA

NameTypeReadableWritableDescription
ssidstringYesNoService set identifier (SSID) of the hotspot, in UTF-8 format. The maximum length is 32 bytes.
Atomic service API: This API can be used in atomic services since API version 12.
bssidstringYesNoBasic service set identifier (BSSID) of the hotspot, for example, 00:11:22:33:44:55.
Atomic service API: This API can be used in atomic services since API version 12.
bssidType10+DeviceAddressTypeYesNoBSSID type of the hotspot.
Atomic service API: This API can be used in atomic services since API version 12.
capabilitiesstringYesNoHotspot capabilities.
securityTypeWifiSecurityTypeYesNoWLAN security type.
Atomic service API: This API can be used in atomic services since API version 12.
rssinumberYesNoReceived signal strength indicator (RSSI) of the hotspot, in dBm.
Atomic service API: This API can be used in atomic services since API version 12.
bandnumberYesNoFrequency band of the WLAN access point (AP). The value 1 indicates 2.4 GHz, and the value 2 indicates 5 GHz.
frequencynumberYesNoFrequency of the WLAN AP.
Atomic service API: This API can be used in atomic services since API version 12.
channelWidthnumberYesNoChannel width of the WLAN AP. For details, see WifiChannelWidth.
centerFrequency0numberYesNoCenter frequency of the hotspot.
centerFrequency1numberYesNoCenter frequency of the hotspot. If the hotspot uses two non-overlapping WLAN channels, two center frequencies, namely centerFrequency0 and centerFrequency1, are returned.
infoElemsArray<WifiInfoElem>YesNoInformation elements.
timestampnumberYesNoTimestamp.
supportedWifiCategory12+WifiCategoryYesNoHighest Wi-Fi category supported by the hotspot.
isHiLinkNetwork12+booleanYesNoWhether the hotspot supports HiLink. The value true indicates that the hotspot supports HiLink, and the value false indicates the opposite.

DeviceAddressType10+

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

System capability: SystemCapability.Communication.WiFi.Core

Atomic service API: This API can be used in atomic services since API version 12.

NameValueDescription
RANDOM_DEVICE_ADDRESS0Random device address.
REAL_DEVICE_ADDRESS1Read device address.

WifiSecurityType9+

Enumerates the WLAN security types.

System capability: SystemCapability.Communication.WiFi.Core

NameValueDescription
WIFI_SEC_TYPE_INVALID0Invalid security type.
WIFI_SEC_TYPE_OPEN1Open security type.
Atomic service API: This API can be used in atomic services since API version 12.
WIFI_SEC_TYPE_WEP2Wired Equivalent Privacy (WEP). This type is not supported by the candidate network configuration (addCandidateConfig).
WIFI_SEC_TYPE_PSK3Pre-shared key (PSK).
WIFI_SEC_TYPE_SAE4Simultaneous Authentication of Equals (SAE).
WIFI_SEC_TYPE_EAP5Extensible Authentication Protocol (EAP).
WIFI_SEC_TYPE_EAP_SUITE_B6Suite B 192-bit encryption.
WIFI_SEC_TYPE_OWE7Opportunistic Wireless Encryption (OWE).
WIFI_SEC_TYPE_WAPI_CERT8WLAN Authentication and Privacy Infrastructure (WAPI) in certificate-based mode (WAPI-CERT).
WIFI_SEC_TYPE_WAPI_PSK9WAPI-PSK.

WifiBandType10+

Enumerates the Wi-Fi band types.

System capability: SystemCapability.Communication.WiFi.STA

NameValueDescription
WIFI_BAND_NONE0Invalid band type
WIFI_BAND_2G12.4 GHz
WIFI_BAND_5G25 GHz
WIFI_BAND_6G36 GHz
WIFI_BAND_60G460 GHz

WifiStandard10+

Enumerates the Wi-Fi standards.

System capability: SystemCapability.Communication.WiFi.STA

NameValueDescription
WIFI_STANDARD_UNDEFINED0Invalid Wi-Fi standard
WIFI_STANDARD_11A1802.11a
WIFI_STANDARD_11B2802.11b
WIFI_STANDARD_11G3802.11g
WIFI_STANDARD_11N4802.11n
WIFI_STANDARD_11AC5802.11ac
WIFI_STANDARD_11AX6802.11ax
WIFI_STANDARD_11AD7802.11ad

WifiInfoElem9+

Represents a WLAN information element.

System capability: SystemCapability.Communication.WiFi.STA

NameTypeReadableWritableDescription
eidnumberYesNoID of the information element.
contentUint8ArrayYesNoContent of the information element.

WifiChannelWidth9+

Enumerates the WLAN channel widths.

System capability: SystemCapability.Communication.WiFi.STA

NameValueDescription
WIDTH_20MHZ020 MHz
WIDTH_40MHZ140 MHz
WIDTH_80MHZ280 MHz
WIDTH_160MHZ3160 MHz
WIDTH_80MHZ_PLUS480 MHz+
WIDTH_INVALID5Invalid value

WifiDeviceConfig9+

Represents the WLAN configuration.

System capability: SystemCapability.Communication.WiFi.STA

NameTypeReadableWritableDescription
ssidstringYesNoService set identifier (SSID) of the hotspot, in UTF-8 format. The maximum length is 32 bytes.
Atomic service API: This API can be used in atomic services since API version 12.
bssidstringYesNoBasic service set identifier (BSSID) of the hotspot, for example, 00:11:22:33:44:55.
Atomic service API: This API can be used in atomic services since API version 12.
bssidType10+DeviceAddressTypeYesNoBSSID type of the hotspot.
Atomic service API: This API can be used in atomic services since API version 12.
preSharedKeystringYesNoPSK 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.
Atomic service API: This API can be used in atomic services since API version 12.
isHiddenSsidbooleanYesNoWhether the network is hidden.
securityTypeWifiSecurityTypeYesNoSecurity type.
Atomic service API: This API can be used in atomic services since API version 12.
eapConfig10+WifiEapConfigYesNoEAP configuration. This parameter is mandatory only when securityType is WIFI_SEC_TYPE_EAP.
wapiConfig12+WifiWapiConfigYesNoWAPI configuration. This parameter is mandatory only when securityType is WIFI_SEC_TYPE_WAPI_CERT or** WIFI_SEC_TYPE_WAPI_PSK**.

WifiEapConfig10+

Represents EAP configuration information.

System capability: SystemCapability.Communication.WiFi.STA

NameTypeReadableWritableDescription
eapMethodEapMethodYesNoEAP authentication method.
phase2MethodPhase2MethodYesNoPhase 2 authentication method. This parameter is mandatory only when eapMethod is EAP_PEAP or EAP_TTLS.
identitystringYesNoIdentity Information. When eapMethod is EAP_PEAP, EAP_TLS, or EAP_PWD, this parameter cannot be empty.
anonymousIdentitystringYesNoAnonymous identity. This parameter is not used currently.
passwordstringYesNoPassword. When eapMethod is EAP_PEAP or EAP_PWD, this parameter cannot be empty.
caCertAliasstringYesNoCA certificate alias.
caPathstringYesNoCA certificate path.
clientCertAliasstringYesNoClient certificate alias.
certEntryUint8ArrayYesYesCA certificate content. If eapMethod is EAP_TLS and this parameter is not specified, clientCertAlias cannot be empty.
certPasswordstringYesYesCA certificate password.
altSubjectMatchstringYesNoA string to match the alternate subject.
domainSuffixMatchstringYesNoA string to match the domain suffix.
realmstringYesNoRealm for the passpoint credential.
plmnstringYesNoPublic land mobile network (PLMN) of the passpoint credential provider.
eapSubIdnumberYesNoSub-ID of the SIM card.

WifiWapiConfig12+

Represents WAPI configuration.

System capability: SystemCapability.Communication.WiFi.STA

NameTypeReadableWritableDescription
wapiPskTypeWapiPskTypeYesYesPSK type.
wapiAsCertstringNoYesAS certificate.
wapiUserCertstringNoYesUser Certificate.

WapiPskType12+

Enumerates the WAPI authentication types.

System capability: SystemCapability.Communication.WiFi.Core

NameValueDescription
WAPI_PSK_ASCII0ASCII.
WAPI_PSK_HEX1HEX.

EapMethod10+

Enumerates the EAP authentication methods.

System capability: SystemCapability.Communication.WiFi.STA

NameValueDescription
EAP_NONE0Not specified.
EAP_PEAP1PEAP.
EAP_TLS2TLS.
EAP_TTLS3TTLS.
EAP_PWD4Password.
EAP_SIM5SIM.
EAP_AKA6AKA.
EAP_AKA_PRIME7AKA Prime.
EAP_UNAUTH_TLS8UNAUTH TLS.

Phase2Method10+

Enumerates the Phase 2 authentication methods.

System capability: SystemCapability.Communication.WiFi.STA

NameValueDescription
PHASE2_NONE0Not specified.
PHASE2_PAP1PAP.
PHASE2_MSCHAP2MS-CHAP.
PHASE2_MSCHAPV23MS-CHAPv2.
PHASE2_GTC4GTC.
PHASE2_SIM5SIM.
PHASE2_AKA6AKA.
PHASE2_AKA_PRIME7AKA Prime.

WifiCategory12+

Represents the highest Wi-Fi type supported by a hotspot.

System capability: SystemCapability.Communication.WiFi.STA

NameValueDescription
DEFAULT1Default, that is, Wi-Fi types lower than Wi-Fi 6.
WIFI62Wi-Fi 6
WIFI6_PLUS3Wi-Fi 6+
WIFI715+4Wi-Fi 7
WIFI7_PLUS15+5Wi-Fi 7+

wifiManager.addCandidateConfig9+

addCandidateConfig(config: WifiDeviceConfig): Promise<number>

Adds the candidate network configuration. This API uses a promise to return the result. Before using this API, ensure that WLAN is enabled.

Required permissions: ohos.permission.SET_WIFI_INFO

Atomic service API: This API can be used in atomic services since API version 12.

System capability: SystemCapability.Communication.WiFi.STA

Parameters

NameTypeMandatoryDescription
configWifiDeviceConfigYesWLAN configuration to add. The default bssidType is random device address.

Return value

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

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
2. Incorrect parameter types. 3. Parameter verification failed.
801Capability not supported.
2501000Operation failed.

Example

	import { wifiManager } from '@kit.ConnectivityKit';
	
	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

Atomic service API: This API can be used in atomic services since API version 12.

Parameters

NameTypeMandatoryDescription
configWifiDeviceConfigYesWLAN configuration to add. The default bssidType is random device address.
callbackAsyncCallback<number>YesCallback used to return the result. If err is 0, the operation is successful. data indicates the ID of the network configuration to add. If data is -1, the network configuration fails to be added.
If the value of err is not 0, an error has occurred during the operation.

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
2. Incorrect parameter types. 3. Parameter verification failed.
801Capability not supported.
2501000Operation failed.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

	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

Atomic service API: This API can be used in atomic services since API version 12.

System capability: SystemCapability.Communication.WiFi.STA

Parameters

NameTypeMandatoryDescription
networkIdnumberYesID of the network configuration to remove.

Return value

TypeDescription
Promise<void>Promise used to return the result.

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
2. Incorrect parameter types. 3. Parameter verification failed.
801Capability not supported.
2501000Operation failed.
2501001Wi-Fi STA disabled.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

	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

Atomic service API: This API can be used in atomic services since API version 12.

Parameters

NameTypeMandatoryDescription
networkIdnumberYesID of the network configuration to remove.
callbackAsyncCallback<void>YesCallback used 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.

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
2. Incorrect parameter types. 3. Parameter verification failed.
801Capability not supported.
2501000Operation failed.
2501001Wi-Fi STA disabled.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

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

wifiManager.removeDevice15+

removeDevice(id: number): void

Removes the network configuration.

Required permissions: ohos.permission.SET_WIFI_INFO and ohos.permission.MANAGE_WIFI_CONNECTION (available only to system applications) or ohos.permission.MANAGE_ENTERPRISE_WIFI_CONNECTION (available only to enterprise applications)

System capability: SystemCapability.Communication.WiFi.STA

Parameters

NameTypeMandatoryDescription
idnumberYesID of the network configuration to remove.

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
2. Incorrect parameter types. 3. Parameter verification failed.
801Capability not supported.
2501000Operation failed.
2501001Wi-Fi STA disabled.

Example

	import { wifiManager } from '@kit.ConnectivityKit';
  
    try {
      let id = 0;
      wifiManager.removeDevice(id);	
    }catch(error){
      console.error("failed:" + JSON.stringify(error));
    }

wifiManager.getCandidateConfigs9+

getCandidateConfigs():  Array<WifiDeviceConfig>

Obtains candidate network configuration.

Required permissions:

API version 10 and later: ohos.permission.GET_WIFI_INFO

Atomic service API: This API can be used in atomic services since API version 12.

System capability: SystemCapability.Communication.WiFi.STA

Return value

TypeDescription
 Array<WifiDeviceConfig>Candidate network configuration obtained.

Error codes

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

IDError Message
201Permission denied.
801Capability not supported.
2501000Operation failed.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

	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

Atomic service API: This API can be used in atomic services since API version 12.

System capability: SystemCapability.Communication.WiFi.STA

Parameters

NameTypeMandatoryDescription
networkIdnumberYesID of the candidate network configuration.

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
2. Incorrect parameter types. 3. Parameter verification failed.
801Capability not supported.
2501000Operation failed.
2501001Wi-Fi STA disabled.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

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

wifiManager.addDeviceConfig15+

addDeviceConfig(config: WifiDeviceConfig): Promise<number>

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

Required permissions: ohos.permission.SET_WIFI_INFO and ohos.permission.SET_WIFI_CONFIG

System capability: SystemCapability.Communication.WiFi.STA

Parameters

NameTypeMandatoryDescription
configWifiDeviceConfigYesWLAN configuration to add. The value of bssidType is random device address by default.

Return value

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

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
2. Incorrect parameter types. 3. Parameter verification failed.
801Capability not supported.
2501000Operation failed.
2501001Wi-Fi STA disabled.

Example

	import { wifiManager } from '@kit.ConnectivityKit';
	
	try {
		let config:wifiManager.WifiDeviceConfig = {
			ssid : "****",
			preSharedKey : "****",
			securityType : 0
		}
		wifiManager.addDeviceConfig(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.addDeviceConfig15+

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

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

Required permissions: ohos.permission.SET_WIFI_INFO and ohos.permission.SET_WIFI_CONFIG

System capability: SystemCapability.Communication.WiFi.STA

Parameters

NameTypeMandatoryDescription
configWifiDeviceConfigYesWLAN configuration to add. The value of bssidType is random device address by default.
callbackAsyncCallback<number>YesCallback used to return the result. If the operation is successful, err is 0 and data is the network configuration ID. If data is -1, the operation has failed. If err is not 0, an error has occurred.

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
2. Incorrect parameter types. 3. Parameter verification failed.
801Capability not supported.
2501000Operation failed.
2501001Wi-Fi STA disabled.

Example

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

wifiManager.getDeviceConfigs15+

getDeviceConfigs():  Array<WifiDeviceConfig>

Obtains network configuration.

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

System capability: SystemCapability.Communication.WiFi.STA

Return value

TypeDescription
 Array<WifiDeviceConfig>Network configuration array.

Error codes

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

IDError Message
201Permission denied.
801Capability not supported.
2501000Operation failed.

Example

	import { wifiManager } from '@kit.ConnectivityKit';
  
    try {
      let configs = wifiManager.getDeviceConfigs();
      console.info("configs:" + JSON.stringify(configs));
    }catch(error){
      console.error("failed:" + JSON.stringify(error));
    }
	

wifiManager.connectToNetwork15+

connectToNetwork(networkId: number): void

Connects to a hotspot.

Required permissions: ohos.permission.MANAGE_WIFI_CONNECTION (available only to system applications) or ohos.permission.MANAGE_ENTERPRISE_WIFI_CONNECTION (available only to enterprise applications)

System capability: SystemCapability.Communication.WiFi.STA

Parameters

NameTypeMandatoryDescription
networkIdnumberYesID of the candidate network configuration.

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
2. Incorrect parameter types. 3. Parameter verification failed.
801Capability not supported.
2501000Operation failed.
2501001Wi-Fi STA disabled.

Example

	import { wifiManager } from '@kit.ConnectivityKit';
  
    try {
      let networkId = 0;
      wifiManager.connectToNetwork(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

NameTypeMandatoryDescription
rssinumberYesRSSI of the hotspot, in dBm.
bandnumberYesFrequency band of the WLAN AP. The value 1 indicates 2.4 GHz, and the value 2 indicates 5 GHz.

Return value

TypeDescription
numberSignal level obtained. The value range is [0, 4].

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
2. Incorrect parameter types.
801Capability not supported.
2501000Operation failed.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

	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

If macType to be obtained is 1 (device MAC address), the caller must have the ohos.permission.GET_WIFI_LOCAL_MAC permission, which is available only for system applications. Without this permission, a random MAC address is returned in macAddress.

Atomic service API: This API can be used in atomic services since API version 12.

System capability: SystemCapability.Communication.WiFi.STA

Return value

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

Error codes

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

IDError Message
201Permission denied.
801Capability not supported.
2501000Operation failed.
2501001Wi-Fi STA disabled.

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

If macType to be obtained is 1 (device MAC address), the caller must have the ohos.permission.GET_WIFI_LOCAL_MAC permission, which is available only for system applications. Without this permission, a random MAC address is returned in macAddress.

System capability: SystemCapability.Communication.WiFi.STA

Parameters

NameTypeMandatoryDescription
callbackAsyncCallback<WifiLinkedInfo>YesCallback used 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.

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2501000Operation failed.
2501001Wi-Fi STA disabled.

Example

  import { wifiManager } from '@kit.ConnectivityKit';
  
  wifiManager.getLinkedInfo((err, data:wifiManager.WifiLinkedInfo) => {
      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");
  });

wifiManager.getLinkedInfoSync18+

getLinkedInfoSync(): WifiLinkedInfo;

Obtains the WLAN connection information. This API returns the result synchronously.

Required permissions: ohos.permission.GET_WIFI_INFO

If macType to be obtained is 1 (device MAC address), the caller must have the ohos.permission.GET_WIFI_LOCAL_MAC permission, which is available only for system applications. Without this permission, a random MAC address is returned in macAddress.

Atomic service API: This API can be used in atomic services since API version 16.

System capability: SystemCapability.Communication.WiFi.STA

Return value

TypeDescription
WifiLinkedInforeturn the WLAN connection information.

Error codes

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

IDError Message
201Permission denied.
801Capability not supported.
2501000Operation failed.
2501001Wi-Fi STA disabled.

Example

  import { wifiManager } from '@kit.ConnectivityKit';
  try {
    let linkInfo = wifiManager.getLinkedInfoSync();
    console.info("get linked info:" + JSON.stringify(linkInfo));
  } catch(error) {
    console.error("get linked info failed:" + JSON.stringify(error));
  }

WifiLinkedInfo9+

Represents the WLAN connection information.

System capability: SystemCapability.Communication.WiFi.STA

NameTypeReadableWritableDescription
ssidstringYesNoSSID of the hotspot, in UTF-8 format.
Atomic service API: This API can be used in atomic services since API version 12.
bssidstringYesNoBSSID of the hotspot.
Atomic service API: This API can be used in atomic services since API version 12.
rssinumberYesNoReceived signal strength indicator (RSSI) of the hotspot, in dBm.
Atomic service API: This API can be used in atomic services since API version 12.
bandnumberYesNoFrequency band of the WLAN AP. The value 1 indicates 2.4 GHz, and the value 2 indicates 5 GHz.
linkSpeednumberYesNoUplink speed of the WLAN AP, in Mbps/s.
rxLinkSpeed10+numberYesNoDownlink speed of the WLAN AP, in Mbps/s.
maxSupportedTxLinkSpeed10+numberYesNoMaximum uplink speed supported, in Mbps/s.
maxSupportedRxLinkSpeed10+numberYesNoMaximum downlink speed supported, in Mbps/s.
frequencynumberYesNoFrequency of the WLAN AP.
Atomic service API: This API can be used in atomic services since API version 12.
isHiddenbooleanYesNoWhether the WLAN AP is a hidden network. The value true indicates that the WLAN AP is a hidden network, and the value false indicates the opposite.
isRestrictedbooleanYesNoWhether data volume is restricted at the WLAN AP. The value true indicates that data volume is restricted, and the value false indicates the opposite.
macTypenumberYesNoMAC address type.
The value 0 indicates a random MAC address, and the value 1 indicates device MAC address.
macAddressstringYesNoMAC address of the device.
ipAddressnumberYesNoIP address of the device that sets up the WLAN connection (the Wi-Fi connection information and the status information of the local device can be viewed.)
connStateConnStateYesNoWLAN connection state.
channelWidth10+WifiChannelWidthYesNoChannel bandwidth of the connected hotspot.
wifiStandard10+WifiStandardYesNoWi-Fi standard used by the connected hotspot.
supportedWifiCategory12+WifiCategoryYesNoHighest Wi-Fi category supported by the hotspot.
isHiLinkNetwork12+booleanYesNoWhether the hotspot supports HiLink. The value true indicates that the hotspot supports HiLink, and the value false indicates the opposite.

ConnState9+

Enumerates the WLAN connection states.

System capability: SystemCapability.Communication.WiFi.STA

NameValueDescription
SCANNING0The device is scanning for available APs.
CONNECTING1A WLAN connection is being established.
AUTHENTICATING2An authentication is being performed for a WLAN connection.
OBTAINING_IPADDR3The IP address of the WLAN connection is being acquired.
CONNECTED4A WLAN connection is established.
DISCONNECTING5The WLAN connection is being disconnected.
DISCONNECTED6The WLAN connection is disconnected.
UNKNOWN7Failed to set up the WLAN connection.

wifiManager.isConnected9+

isConnected(): boolean

Checks whether WLAN is connected.

Required permissions: ohos.permission.GET_WIFI_INFO

Atomic service API: This API can be used in atomic services since API version 12.

System capability: SystemCapability.Communication.WiFi.STA

Return value

TypeDescription
booleanReturns true if WLAN is connected; returns false otherwise.

Error codes

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

IDError Message
201Permission denied.
801Capability not supported.
2501000Operation failed.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

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

wifiManager.disconnect15+

disconnect(): void

Disconnects from a WLAN.

Required permissions: ohos.permission.SET_WIFI_INFO and ohos.permission.MANAGE_WIFI_CONNECTION (available only to system applications) or ohos.permission.MANAGE_ENTERPRISE_WIFI_CONNECTION (available only to enterprise applications)

System capability: SystemCapability.Communication.WiFi.STA

Error codes

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

IDError Message
201Permission denied.
801Capability not supported.
2501000Operation failed.
2501001Wi-Fi STA disabled.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

	try {
		wifiManager.disconnect();
	}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

NameTypeMandatoryDescription
featureIdnumberYesFeature ID.

Feature IDs

ValueDescription
0x0001WLAN infrastructure mode
0x00025 GHz feature
0x0004Generic Advertisement Service (GAS)/Access Network Query Protocol (ANQP) feature
0x0008Wi-Fi Direct
0x0010SoftAP
0x0040Wi-Fi Aware
0x8000WLAN AP/STA concurrency
0x8000000WPA3 Personal (WPA-3 SAE)
0x10000000WPA3-Enterprise Suite B
0x20000000Enhanced open feature

Return value

TypeDescription
booleanReturns true if the feature is supported; returns false otherwise.

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
2. Incorrect parameter types.
801Capability not supported.
2401000Operation failed.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

	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 IPv4 information.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Return value

TypeDescription
IpInfoIP information obtained.

Error codes

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

IDError Message
201Permission denied.
801Capability not supported.
2501000Operation failed.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

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

IpInfo9+

Represents IPv4 information.

System capability: SystemCapability.Communication.WiFi.STA

NameTypeReadableWritableDescription
ipAddressnumberYesNoIP address.
gatewaynumberYesNoGateway.
netmasknumberYesNoSubnet mask.
primaryDnsnumberYesNoIP address of the preferred DNS server.
secondDnsnumberYesNoIP address of the alternate DNS server.
serverIpnumberYesNoIP address of the DHCP server.
leaseDurationnumberYesNoLease 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

TypeDescription
Ipv6InfoIPv6 information obtained.

Error codes

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

IDError Message
201Permission denied.
801Capability not supported.
2501000Operation failed.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

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

Ipv6Info10+

Represents the IPv6 information.

System capability: SystemCapability.Communication.WiFi.STA

NameTypeReadableWritableDescription
linkIpv6AddressstringYesNoIPv6 address of the link.
globalIpv6AddressstringYesNoGlobal IPv6 address.
randomGlobalIpv6AddressstringYesNoRandom global IPv6 address. This parameter is reserved.
uniqueIpv6Address12+stringYesNoUnique local address (ULA) in IPv6 format.
randomUniqueIpv6Address12+stringYesNoRandom unique local address (RULA) in IPv6 format.
gatewaystringYesNoGateway.
netmaskstringYesNoSubnet mask.
primaryDNSstringYesNoIPv6 address of the preferred DNS server.
secondDNSstringYesNoIPv6 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

TypeDescription
stringCountry code obtained.

Error codes

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

IDError Message
201Permission denied.
801Capability not supported.
2401000Operation failed.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

	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

NameTypeMandatoryDescription
bandTypeWifiBandTypeYesWi-Fi band type.

Return value

TypeDescription
booleanReturns true if the feature is supported; returns false otherwise.

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified.
2. Incorrect parameter types. 3. Parameter verification failed.
801Capability not supported.
2501000Operation failed.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

	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

TypeDescription
booleanReturns 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.

IDError Message
201Permission denied.
801Capability not supported.
2501000Operation failed.
2501001Wi-Fi STA disabled.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

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

wifiManager.isHotspotActive15+

isHotspotActive(): boolean

Checks whether this hotspot is active.

Required permissions: ohos.permission.GET_WIFI_INFO

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

Return value

TypeDescription
booleanReturns true if WLAN is enabled; returns false otherwise.

Error codes

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

IDError Message
201Permission denied.
801Capability not supported.
2601000Operation failed.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

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

wifiManager.getP2pLinkedInfo9+

getP2pLinkedInfo(): Promise<WifiP2pLinkedInfo>

Obtains P2P connection 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, which is available only for system applications. Without this permission, an all-zero address is returned in groupOwnerAddr.

System capability: SystemCapability.Communication.WiFi.P2P

Return value

TypeDescription
Promise<WifiP2pLinkedInfo>Promise used to return the P2P connection information obtained.

Error codes

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

IDError Message
201Permission denied.
801Capability not supported.
2801000Operation 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, which is available only for system applications. Without this permission, an all-zero address is returned in groupOwnerAddr.

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

NameTypeMandatoryDescription
callbackAsyncCallback<WifiP2pLinkedInfo>YesCallback used 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.

IDError Message
201Permission denied.
801Capability not supported.
2801000Operation failed.
2801001Wi-Fi STA disabled.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

	wifiManager.getP2pLinkedInfo((err, data:wifiManager.WifiP2pLinkedInfo) => {
    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

NameTypeReadableWritableDescription
connectStateP2pConnectStateYesNoP2P connection state.
isGroupOwnerbooleanYesNoWhether the device is the group owner. The value true indicates that the device is the group owner, and the value false indicates the opposite.
groupOwnerAddrstringYesNoIP address of the group.

P2pConnectState9+

Enumerates the P2P connection states.

System capability: SystemCapability.Communication.WiFi.P2P

NameValueDescription
DISCONNECTED0Disconnected.
CONNECTED1Connected.

wifiManager.getCurrentGroup9+

getCurrentGroup(): Promise<WifiP2pGroupInfo>

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

Required permissions:

API version 10 and later: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Return value

TypeDescription
Promise<WifiP2pGroupInfo>Promise used to return the P2P group information obtained. If the caller has the ohos.permission.GET_WIFI_PEERS_MAC permission (available only for system applications), 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.

IDError Message
201Permission denied.
801Capability not supported.
2801000Operation 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 10 and later: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

NameTypeMandatoryDescription
callbackAsyncCallback<WifiP2pGroupInfo>YesCallback used 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 caller has the ohos.permission.GET_WIFI_PEERS_MAC permission (available only for system applications), 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.

IDError Message
201Permission denied.
801Capability not supported.
2801000Operation failed.

Example

	import { wifiManager } from '@kit.ConnectivityKit';
	// The current group information can be obtained only after the P2P group is created or the connection is successful.
	wifiManager.getCurrentGroup((err, data:wifiManager.WifiP2pGroupInfo) => {
    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 10 and later: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Return value

TypeDescription
Promise<WifiP2pDevice[]>Promise used to return the peer device list. If the caller has the ohos.permission.GET_WIFI_PEERS_MAC permission (available only for system applications), 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.

IDError Message
201Permission denied.
801Capability not supported.
2801000Operation 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 10 and later: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

NameTypeMandatoryDescription
callbackAsyncCallback<WifiP2pDevice[]>YesCallback used 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 caller has the ohos.permission.GET_WIFI_PEERS_MAC permission (available only for system applications), 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.

IDError Message
201Permission denied.
801Capability not supported.
2801000Operation failed.
2801001Wi-Fi STA disabled.

Example

	import { wifiManager } from '@kit.ConnectivityKit';
	// The peer device list can be obtained only after the P2P discovery is complete.
	wifiManager.getP2pPeerDevices((err, data:wifiManager.WifiP2pDevice[]) => {
    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

NameTypeReadableWritableDescription
deviceNamestringYesNoDevice name.
deviceAddressstringYesNoMAC address of the device.
deviceAddressType10+DeviceAddressTypeYesNoMAC address type of the device.
primaryDeviceTypestringYesNoType of the primary device.
deviceStatusP2pDeviceStatusYesNoDevice status.
groupCapabilitiesnumberYesNoGroup capabilities.

P2pDeviceStatus9+

Enumerates the P2P device states.

System capability: SystemCapability.Communication.WiFi.P2P

NameValueDescription
CONNECTED0Connected.
INVITED1Invited.
FAILED2Failed.
AVAILABLE3Available.
UNAVAILABLE4Unavailable.

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:

API version 11 and later: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Return value

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

Error codes

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

IDError Message
201Permission denied.
801Capability not supported.
2801000Operation 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:

API version 11 and later: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

NameTypeMandatoryDescription
callbackAsyncCallback<WifiP2pDevice>YesCallback used 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

IDError Message
201Permission denied.
801Capability not supported.
2801000Operation failed.
2801001Wi-Fi STA disabled.

Example

	import { wifiManager } from '@kit.ConnectivityKit';
	// The local device information can be obtained only after a P2P group is created or the connection is successful.
	wifiManager.getP2pLocalDevice((err, data:wifiManager.WifiP2pDevice) => {
    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

NameTypeMandatoryDescription
configWifiP2PConfigYesGroup configuration. The default DeviceAddressType is random device address.

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Incorrect parameter types.
2. Parameter verification failed.
801Capability not supported.
2801000Operation failed.
2801001Wi-Fi STA disabled.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

	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

NameTypeReadableWritableDescription
deviceAddressstringYesNoDevice address.
deviceAddressType10+DeviceAddressTypeYesNoDevice address type.
netIdnumberYesNoNetwork ID. The value -1 indicates a temporary group, and the value -2 indicates a persistent group.
passphrasestringYesNoPassphrase of the group.
groupNamestringYesNoName of the group.
goBandGroupOwnerBandYesNoFrequency band of the group.

GroupOwnerBand9+

Enumerates the P2P group frequency bands.

System capability: SystemCapability.Communication.WiFi.P2P

NameValueDescription
GO_BAND_AUTO0Auto.
GO_BAND_2GHZ12.4 GHz.
GO_BAND_5GHZ25 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.

IDError Message
201Permission denied.
801Capability not supported.
2801000Operation failed.
2801001Wi-Fi STA disabled.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

	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 10 and later: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

NameTypeMandatoryDescription
configWifiP2PConfigYesP2P group configuration. The default DeviceAddressType is random device address.

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Incorrect parameter types.
2. Parameter verification failed.
801Capability not supported.
2801000Operation failed.
2801001Wi-Fi STA disabled.

Example

  import { wifiManager } from '@kit.ConnectivityKit';
  
  let recvP2pConnectionChangeFunc = (result:wifiManager.WifiP2pLinkedInfo) => {
      console.info("p2p connection change receive event: " + JSON.stringify(result));
      wifiManager.getP2pLinkedInfo((err, data:wifiManager.WifiP2pLinkedInfo) => {
          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:wifiManager.WifiP2pDevice[]) => {
          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:wifiManager.WifiP2pGroupInfo) => {
          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 the P2P connection being set up.

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.

IDError Message
201Permission denied.
801Capability not supported.
2801000Operation failed.
2801001Wi-Fi STA disabled.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

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

wifiManager.startDiscoverDevices9+

startDiscoverDevices(): void

Starts to discover devices.

Required permissions:

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.

IDError Message
201Permission denied.
801Capability not supported.
2801000Operation failed.
2801001Wi-Fi STA disabled.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

	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.

IDError Message
201Permission denied.
801Capability not supported.
2801000Operation failed.
2801001Wi-Fi STA disabled.

Example

	import { wifiManager } from '@kit.ConnectivityKit';

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

WifiP2pGroupInfo9+

Represents the P2P group information.

System capability: SystemCapability.Communication.WiFi.P2P

NameTypeReadableWritableDescription
isP2pGobooleanYesNoWhether the device is the group owner.
ownerInfoWifiP2pDeviceYesNoDevice information of the group.
passphrasestringYesNoPassphrase of the group.
interfacestringYesNoInterface name.
groupNamestringYesNoGroup name.
networkIdnumberYesNoNetwork ID.
frequencynumberYesNoFrequency of the group.
clientDevicesWifiP2pDevice[]YesNoList of connected devices.
goIpAddressstringYesNoIP address of the group.

wifiManager.on('wifiStateChange')9+

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

Subscribes to WLAN state changes. When the service exits, call off(type: 'wifiStateChange', callback?: Callback<number>) to unregister the callback registered.

Required permissions: ohos.permission.GET_WIFI_INFO

Atomic service API: This API can be used in atomic services since API version 12.

System capability: SystemCapability.Communication.WiFi.STA

Parameters

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of wifiStateChange.
callbackCallback<number>YesCallback used to return the WLAN state.

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2501000Operation failed.

WLAN states

ValueDescription
0Deactivated
1Activated
2Activating
3Deactivating

wifiManager.off('wifiStateChange')9+

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

Unsubscribes from WLAN state changes.

Required permissions: ohos.permission.GET_WIFI_INFO

Atomic service API: This API can be used in atomic services since API version 12.

System capability: SystemCapability.Communication.WiFi.STA

Parameters

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of wifiStateChange.
callbackCallback<number>NoCallback 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.

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2501000Operation failed.

Example

  import { wifiManager } from '@kit.ConnectivityKit';
  
  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. When the service exits, call off(type: 'wifiConnectionChange', callback?: Callback<number>) to unregister the callback registered.

Required permissions: ohos.permission.GET_WIFI_INFO

Atomic service API: This API can be used in atomic services since API version 12.

System capability: SystemCapability.Communication.WiFi.STA

Parameters

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of wifiConnectionChange.
callbackCallback<number>YesCallback used to return the WLAN connection state.

WLAN connection states

ValueDescription
0Disconnected.
1Connected.

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2501000Operation 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

Atomic service API: This API can be used in atomic services since API version 12.

System capability: SystemCapability.Communication.WiFi.STA

Parameters

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of wifiConnectionChange.
callbackCallback<number>NoCallback 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.

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2501000Operation failed.

Example

  import { wifiManager } from '@kit.ConnectivityKit';
  
  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. When the service exits, call off(type: 'wifiScanStateChange', callback?: Callback<number>) to unregister the callback registered.

Required permissions: ohos.permission.GET_WIFI_INFO

Atomic service API: This API can be used in atomic services since API version 12.

System capability: SystemCapability.Communication.WiFi.STA

Parameters

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of wifiScanStateChange.
callbackCallback<number>YesCallback used to return the WLAN scan state.

WLAN scan states

ValueDescription
0Scan failed.
1Scan successful.

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2501000Operation 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

Atomic service API: This API can be used in atomic services since API version 12.

System capability: SystemCapability.Communication.WiFi.STA

Parameters

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of wifiScanStateChange.
callbackCallback<number>NoCallback 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.

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2501000Operation failed.

Example

  import { wifiManager } from '@kit.ConnectivityKit';
  
  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. When the service exits, call off(type: 'wifiRssiChange', callback?: Callback<number>) to unregister the callback registered.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.STA

Parameters

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of wifiRssiChange.
callbackCallback<number>YesCallback used to return the RSSI, in dBm.

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2501000Operation 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

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of wifiRssiChange.
callbackCallback<number>NoCallback 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.

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2501000Operation failed.

Example

  import { wifiManager } from '@kit.ConnectivityKit';
  
  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. When the service exits, call off(type: 'hotspotStateChange', callback?: Callback<number>) to unregister the callback registered.

Required permissions: ohos.permission.GET_WIFI_INFO

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

Parameters

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of hotspotStateChange.
callbackCallback<number>YesCallback used to return the hotspot state.

Hotspot states

ValueDescription
0Deactivated
1Activated
2Activating
3Deactivating

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2601000Operation 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

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of hotspotStateChange.
callbackCallback<number>NoCallback 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.

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2601000Operation failed.

Example

  import { wifiManager } from '@kit.ConnectivityKit';
  
  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. When the service exits, call off(type: 'p2pStateChange', callback?: Callback<number>) to unregister the callback registered.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of p2pStateChange.
callbackCallback<number>YesCallback used to return the P2P state.

P2P states

ValueDescription
1Available
2Opening
3Opened
4Closing
5Closed

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2801000Operation 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

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of p2pStateChange.
callbackCallback<number>NoCallback 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.

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2801000Operation failed.

Example

  import { wifiManager } from '@kit.ConnectivityKit';
  
  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. When the service exits, call off(type: 'p2pConnectionChange', callback?: Callback<WifiP2pLinkedInfo>) to unregister the callback registered.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of p2pConnectionChange.
callbackCallback<WifiP2pLinkedInfo>YesCallback used to return the WLAN state.

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2801000Operation 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

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of p2pConnectionChange.
callbackCallback<WifiP2pLinkedInfo>NoCallback 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.

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2801000Operation failed.

Example

  import { wifiManager } from '@kit.ConnectivityKit';
  
  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 status changes. When the service exits, call off(type: 'p2pDeviceChange', callback?: Callback<WifiP2pDevice>) to unregister the callback registered.

Required permissions:

API version 10 and later: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of p2pDeviceChange.
callbackCallback<WifiP2pDevice>YesCallback used to return the WLAN state.

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2801000Operation failed.

wifiManager.off('p2pDeviceChange')9+

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

Unsubscribes from P2P device state changes.

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of p2pDeviceChange.
callbackCallback<WifiP2pDevice>NoCallback 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.

IDError Message
20110+Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2801000Operation failed.

Example

  import { wifiManager } from '@kit.ConnectivityKit';
  
  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 status changes. When the service exits, call off(type: 'p2pPeerDeviceChange', callback?: Callback<WifiP2pDevice[]>) to unregister the callback registered.

Required permissions:

API version 10 and later: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of p2pPeerDeviceChange.
callbackCallback<WifiP2pDevice[]>YesCallback used to return the peer device status. If the caller has the ohos.permission.GET_WIFI_PEERS_MAC permission (available only for system applications), 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.

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2801000Operation failed.

wifiManager.off('p2pPeerDeviceChange')9+

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

Unsubscribes from P2P peer device state changes.

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of p2pPeerDeviceChange.
callbackCallback<WifiP2pDevice[]>NoCallback to unregister. If this parameter is not specified, this API unregisters all callbacks for the specified event. If the caller has the ohos.permission.GET_WIFI_PEERS_MAC permission (available only for system applications), 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.

IDError Message
20110+Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2801000Operation failed.

Example

  import { wifiManager } from '@kit.ConnectivityKit';
  
  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 changes. When the service exits, call off(type: 'p2pPersistentGroupChange', callback?: Callback<void>) to unregister the callback registered.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of p2pPersistentGroupChange.
callbackCallback<void>YesCallback used to return the WLAN state.

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2801000Operation 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

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of p2pPersistentGroupChange.
callbackCallback<void>NoCallback 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.

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2801000Operation failed.

Example

  import { wifiManager } from '@kit.ConnectivityKit';
  
  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 changes. When the service exits, call off(type: 'p2pDiscoveryChange', callback?: Callback<number>) to unregister the callback registered.

Required permissions: ohos.permission.GET_WIFI_INFO

System capability: SystemCapability.Communication.WiFi.P2P

Parameters

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of p2pDiscoveryChange.
callbackCallback<number>YesCallback used to return the P2P device discovery change.

P2P discovered device states

ValueDescription
0Initial state.
1Discovered.

Error codes

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

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2801000Operation 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

NameTypeMandatoryDescription
typestringYesEvent type, which has a fixed value of p2pDiscoveryChange.
callbackCallback<number>NoCallback 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.

IDError Message
201Permission denied.
401Invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types.
801Capability not supported.
2801000Operation failed.

Example

  import { wifiManager } from '@kit.ConnectivityKit';
  
  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);

你可能感兴趣的鸿蒙文章

harmony 鸿蒙Connectivity Kit (Short-Range Communication Service)

harmony 鸿蒙Bluetooth

harmony 鸿蒙Wifi

harmony 鸿蒙Bluetooth Error Codes

harmony 鸿蒙NFC Error Codes

harmony 鸿蒙SecureElement Error Codes

harmony 鸿蒙Wi-Fi Error Codes

harmony 鸿蒙@ohos.bluetooth.a2dp (Bluetooth A2DP Module) (System API)

harmony 鸿蒙@ohos.bluetooth.a2dp (Bluetooth A2DP Module)

harmony 鸿蒙@ohos.bluetooth.access (Bluetooth Access Module) (System API)

  • 所属分类: 后端技术
  • 本文标签: 鸿蒙 软件
  • 版权声明: 本文链接 https://seaxiang.com/blog/JdUQHb