harmony 鸿蒙Wi-Fi Subsystem ChangeLog

  • 2023-02-17
  • 浏览 (569)

Wi-Fi Subsystem ChangeLog

cl.location.1 Location Service Permission Change

From API version 9, the ohos.permission.APPROXIMATELY_LOCATION permission is added for obtaining the approximate location.

If you use API version 9 or later, you need to apply for both the ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION permissions. Applying for only the ohos.permission.LOCATION permission will fail.

Change Impacts

Applications using API versions earlier than 9 are not affected. For an application using API version 9 or later, the method for applying for the location permission is changed. The details are as follows:

Before using basic location capabilities, check whether your application has been granted the permission to access the device location information. If not, your application needs to obtain the permission from the user as described below.

The system provides the following location permissions:

  • ohos.permission.LOCATION

  • ohos.permission.APPROXIMATELY_LOCATION

  • ohos.permission.LOCATION_IN_BACKGROUND

If your application needs to access the device location information, it must first apply for required permissions. Specifically speaking:

API versions earlier than 9: Apply for ohos.permission.LOCATION.

API version 9 and later: Apply for ohos.permission.APPROXIMATELY_LOCATION, or apply for ohos.permission.APPROXIMATELY_LOCATION and ohos.permission.LOCATION. Note that ohos.permission.LOCATION cannot be applied for separately.

API Version Location Permission Permission Application Result Location Accuracy
Earlier than 9 ohos.permission.LOCATION Success Location accurate to meters
9 and later ohos.permission.LOCATION Failure No location obtained
9 and later ohos.permission.APPROXIMATELY_LOCATION Success Location accurate to 5 kilometers
9 and later ohos.permission.APPROXIMATELY_LOCATION and ohos.permission.LOCATION Success Location accurate to meters

If your application needs to access the device location information when running in the background, it must be configured to be able to run in the background and be granted the ohos.permission.LOCATION_IN_BACKGROUND permission. In this way, the system continues to report device location information after your application moves to the background.

You can declare the required permissions in your application’s configuration file. For details, see the permission application guide.

Key API/Component Changes

Class API Type Declaration Change Type
wifiManager method function scan(): void; The permission is changed to ohos.permission.SET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION.
wifiManager method function getScanResults(): Promise<Array<WifiScanInfo>>; The permission is changed to ohos.permission.GET_WIFI_INFO and ohos.permission.GET_WIFI_PEERS_MAC or ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION.
wifiManager method function getScanResults(callback: AsyncCallback<Array<WifiScanInfo>>): void; The permission is changed to ohos.permission.GET_WIFI_INFO and ohos.permission.GET_WIFI_PEERS_MAC or ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION.
wifiManager method function getScanResultsSync(): Array<WifiScanInfo>; The permission is changed to ohos.permission.GET_WIFI_INFO and ohos.permission.GET_WIFI_PEERS_MAC or ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION.
wifiManager method function getCandidateConfigs(): Array<WifiDeviceConfig>; The permission is changed to ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION.
wifiManager method function getDeviceConfigs(): Array<WifiDeviceConfig>; The permission is changed to ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, ohos.permission.APPROXIMATELY_LOCATION, and ohos.permission.GET_WIFI_CONFIG.
wifiManager method function getStations(): Array<StationInfo>; The permission is changed to ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, ohos.permission.APPROXIMATELY_LOCATION, and ohos.permission.MANAGE_WIFI_HOTSPOT.
wifiManager method function getCurrentGroup(): Promise<WifiP2pGroupInfo>; The permission is changed to ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION.
wifiManager method function getCurrentGroup(callback: AsyncCallback<WifiP2pGroupInfo>): void; The permission is changed to ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION.
wifiManager method function getP2pPeerDevices(): Promise<WifiP2pDevice[]>; The permission is changed to ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION.
wifiManager method function getP2pPeerDevices(callback: AsyncCallback<WifiP2pDevice[]>): void; The permission is changed to ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION.
wifiManager method function p2pConnect(config: WifiP2PConfig): void; The permission is changed to ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION.
wifiManager method function startDiscoverDevices(): void; The permission is changed to ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION.
wifiManager method function getP2pGroups(): Promise<Array<WifiP2pGroupInfo>>; The permission is changed to ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION.
wifiManager method function getP2pGroups(callback: AsyncCallback<Array<WifiP2pGroupInfo>>): void; The permission is changed to ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION.
wifiManager method function on(type: “p2pDeviceChange”, callback: Callback<WifiP2pDevice>): void; The permission is changed to ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION.
wifiManager method function off(type: “p2pDeviceChange”, callback?: Callback<WifiP2pDevice>): void; The permission is changed to ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION.
wifiManager method function on(type: “p2pPeerDeviceChange”, callback: Callback<WifiP2pDevice[]>): void; The permission is changed to ohos.permission.GET_WIFI_INFO, ohos.permission.LOCATION, and ohos.permission.APPROXIMATELY_LOCATION.
wifiManager method function off(type: “p2pPeerDeviceChange”, callback?: Callback<WifiP2pDevice[]>): void; The permission is changed to ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION.

你可能感兴趣的鸿蒙文章

harmony 鸿蒙Location Subsystem ChangeLog

0  赞