1# Wi-Fi Subsystem Changelog 2 3## cl.wifiManager.1 Change of the API Permissions 4 5Involved APIs 6 7| API|Permission Before Change|Permission After Change| 8|----|--------|--------| 9|**function** getCandidateConfigs(): Array<WifiDeviceConfig>; | The location permission is required.|The location permission is not required.| 10|**function** getDeviceConfigs(): Array<WifiDeviceConfig>;| The location permission is required.| The location permission is not required.| 11|**function** getStations(): Array<StationInfo>;| 1. The location permission is required. <br>2. The physical MAC address is returned.| 1. The location permission is not required. <br>2. A random MAC address is returned (the GET_PEER_MAC permission is required if a real MAC address is returned).| 12| **function** getCurrentP2pGroup(): Promise<WifiP2pGroupInfo>;| The location permission is required.| The location permission is not required.| 13| **function** getCurrentP2pGroup(callback: AsyncCallback<WifiP2pGroupInfo>): **void**; | The location permission is required.| The location permission is not required.| 14| **function** getP2pPeerDevices(): Promise<WifiP2pDevice[]>;| 1. The location permission is required. <br>2. The physical MAC address is returned.| 1. The location permission is not required. <br>2. A random MAC address is returned (the GET_PEER_MAC permission is required if a real MAC address is returned).| 15| **function** getP2pPeerDevices(callback: AsyncCallback<WifiP2pDevice[]>): **void**;| The location permission is required.| 1. The location permission is not required. <br>2. A random MAC address is returned (the GET_PEER_MAC permission is required if a real MAC address is returned).| 16| **function** p2pConnect(config: WifiP2PConfig): **void**; | The location permission is required.| The location permission is not required.| 17| **function** startDiscoverDevices(): **void**; | The location permission is required.| The location permission is not required.| 18| **function** getP2pGroups(): Promise<Array<WifiP2pGroupInfo>>;| The location permission is required.| The location permission is not required.| 19| **function** getP2pGroups(callback: AsyncCallback<Array<WifiP2pGroupInfo>>): **void**; | The location permission is required.| The location permission is not required.| 20| **function** on(**type**: "p2pDeviceChange", callback: Callback<WifiP2pDevice>): **void**;| 1. The location permission is required. <br>2. The physical MAC address is returned.| 1. The location permission is not required. <br>2. A random MAC address is returned (the GET_PEER_MAC permission is required if a real MAC address is returned).| 21| **function** off(**type**: "p2pDeviceChange", callback?: Callback<WifiP2pDevice>): **void**; | 1. The location permission is required. <br>2. The physical MAC address is returned.| 1. The location permission is not required. <br>2. A random MAC address is returned (the GET_PEER_MAC permission is required if a real MAC address is returned).| 22| **function** on(**type**: "p2pPeerDeviceChange", callback: Callback<WifiP2pDevice[]>): **void**; | 1. The location permission is required. <br>2. The physical MAC address is returned.| 1. The location permission is not required. <br>2. A random MAC address is returned (the GET_PEER_MAC permission is required if a real MAC address is returned).| 23| **function** off(**type**: "p2pPeerDeviceChange", callback?: Callback<WifiP2pDevice[]>): **void**;| 1. The location permission is required. <br>2. The physical MAC address is returned.| 1. The location permission is not required. <br>2. A random MAC address is returned (the GET_PEER_MAC permission is required if a real MAC address is returned).| 24 25**Change Impact** 26If your application is developed using the involved APIs of earlier versions, apply for the required permissions for the new APIs. 27 28**Key API/Component Changes** 29NA 30 31**Adaptation Guide** 32Apply for the required permissions for the involved APIs. 33 34 35## cl.wifiManager.2 Change of the APIs Related to Wi-Fi Scan Capabilities 36 37Deprecated **scan()**, **getScanResults()**, and **getScanResultsSync()**, and added new APIs to provide the related capabilities. 38 39**Change Impact** 40The following APIs are deprecated since API 10, without affecting the compatibility of developed applications. However, you are advised to use new APIs. 41 42**Key API/Component Changes** 43|Deprecated API|New API|Description| 44| ------------- |-------------------------------------------------------- |-----------------------| 45| **function** scan(): **void**; |**function** startScan(): **void**;| Use **startScan** to start Wi-Fi scan.| 46| **function** getScanResults(): Promise<Array<WifiScanInfo>>;|**function** getScanInfoList(): Array<WifiScanInfo>;| Use **getScanInfoList** to obtain the scan result.| 47| **function** getScanResults(callback: AsyncCallback<Array<WifiScanInfo>>): **void**;|**function** getScanInfoList(): Array<WifiScanInfo>; | Use **getScanInfoList** to obtain the scan result.| 48| **function** getScanResultsSync(): Array<WifiScanInfo>; |**function** getScanInfoList(): Array<WifiScanInfo>; | Use **getScanInfoList** to obtain the scan result.| 49 50 51**Adaptation Guide** 52Use the new APIs. 53