From 3256675549732e18755c5461298de86d0830762e Mon Sep 17 00:00:00 2001 From: liu-binjun Date: Tue, 10 Jan 2023 09:32:58 +0800 Subject: [PATCH] bugfix:Synchronize the changes of the trunk to the release branch Signed-off-by: liu-binjun --- api/@ohos.geoLocationManager.d.ts | 1101 ++++++++++++++++++++++++----- api/@ohos.geolocation.d.ts | 97 ++- api/@system.geolocation.d.ts | 18 + 3 files changed, 1022 insertions(+), 194 deletions(-) diff --git a/api/@ohos.geoLocationManager.d.ts b/api/@ohos.geoLocationManager.d.ts index c0572796bf..9b6af91ce3 100644 --- a/api/@ohos.geoLocationManager.d.ts +++ b/api/@ohos.geoLocationManager.d.ts @@ -16,359 +16,913 @@ import { AsyncCallback, Callback } from './basic'; import { WantAgent } from './@ohos.wantAgent'; /** - * Provides interfaces for initiating location requests, ending the location service, - * and obtaining the location result cached by the system. - * + * Provides interfaces for acquiring location information, managing location switches, + * geocoding, reverse geocoding, country code, geofencing and other functions. + * @namespace geoLocationManager * @since 9 */ declare namespace geoLocationManager { /** - * Registering the callback function for listening to country code changes. - * + * Subscribe location changed. + * @permission ohos.permission.APPROXIMATELY_LOCATION + * @param { LocationRequest } request - Indicates the location request parameters. + * @param { Callback } callback - Indicates the callback for reporting the location result. + * @returns { void }. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301100 - The location switch is off. + * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. + * @syscap SystemCapability.Location.Location.Core * @since 9 + */ + function on(type: 'locationChange', request: LocationRequest, callback: Callback): void; + + /** + * Unsubscribe location changed. + * @permission ohos.permission.APPROXIMATELY_LOCATION + * @param { Callback } [callback] - Indicates the callback for reporting the location result. + * @returns { void }. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301100 - The location switch is off. + * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. * @syscap SystemCapability.Location.Location.Core - * @param callback Indicates the callback for reporting country code changes. + * @since 9 + */ + function off(type: 'locationChange', callback?: Callback): void; + + /** + * Subscribe location switch changed. + * @param { Callback } callback - Indicates the callback for reporting the location switch status. + * @returns { void }. + * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @syscap SystemCapability.Location.Location.Core + * @since 9 + */ + function on(type: 'locationEnabledChange', callback: Callback): void; + + /** + * Unsubscribe location switch changed. + * @param { Callback } [callback] - Indicates the callback for reporting the location switch status. + * @returns { void }. + * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @syscap SystemCapability.Location.Location.Core + * @since 9 + */ + function off(type: 'locationEnabledChange', callback?: Callback): void; + + /** + * Subscribe to cache GNSS locations update messages. + * @permission ohos.permission.APPROXIMATELY_LOCATION + * @param { CachedGnssLocationsRequest } request - Indicates the cached GNSS locations request parameters. + * @param { Callback> } callback - Indicates the callback for reporting the cached GNSS locations. + * @returns { void }. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301100 - The location switch is off. + * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. + * @syscap SystemCapability.Location.Location.Gnss + * @since 9 + */ + function on(type: 'cachedGnssLocationsChange', request: CachedGnssLocationsRequest, callback: Callback>): void; + + /** + * Unsubscribe to cache GNSS locations update messages. + * @permission ohos.permission.APPROXIMATELY_LOCATION + * @param { Callback> } [callback] - Indicates the callback for reporting the cached gnss locations. + * @returns { void }. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301100 - The location switch is off. + * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. + * @syscap SystemCapability.Location.Location.Gnss + * @since 9 + */ + function off(type: 'cachedGnssLocationsChange', callback?: Callback>): void; + + /** + * Subscribe satellite status changed. + * @permission ohos.permission.APPROXIMATELY_LOCATION + * @param { Callback } callback - Indicates the callback for reporting the satellite status. + * @returns { void }. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301100 - The location switch is off. + * @syscap SystemCapability.Location.Location.Gnss + * @since 9 + */ + function on(type: 'satelliteStatusChange', callback: Callback): void; + + /** + * Unsubscribe satellite status changed. + * @permission ohos.permission.APPROXIMATELY_LOCATION + * @param { Callback } [callback] - Indicates the callback for reporting the satellite status. + * @returns { void }. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301100 - The location switch is off. + * @syscap SystemCapability.Location.Location.Gnss + * @since 9 + */ + function off(type: 'satelliteStatusChange', callback?: Callback): void; + + /** + * Subscribe nmea message changed. + * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION + * @param { Callback } callback - Indicates the callback for reporting the nmea message. + * @returns { void }. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301100 - The location switch is off. + * @syscap SystemCapability.Location.Location.Gnss + * @since 9 + */ + function on(type: 'nmeaMessage', callback: Callback): void; + + /** + * Unsubscribe nmea message changed. + * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION + * @param { Callback } [callback] - Indicates the callback for reporting the nmea message. + * @returns { void }. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301100 - The location switch is off. + * @syscap SystemCapability.Location.Location.Gnss + * @since 9 + */ + function off(type: 'nmeaMessage', callback?: Callback): void; + + /** + * Add a geofence and subscribe geo fence status changed. + * @permission ohos.permission.APPROXIMATELY_LOCATION + * @param { GeofenceRequest } request - Indicates the Geo-fence configuration parameters. + * @param { WantAgent } want - Indicates which ability to start when the geofence event is triggered. + * @returns { void }. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301100 - The location switch is off. + * @throws { BusinessError } 3301600 - Failed to operate the geofence. + * @syscap SystemCapability.Location.Location.Geofence + * @since 9 + */ + function on(type: 'gnssFenceStatusChange', request: GeofenceRequest, want: WantAgent): void; + + /** + * Remove a geofence and unsubscribe geo fence status changed. + * @permission ohos.permission.APPROXIMATELY_LOCATION + * @param { GeofenceRequest } request - Indicates the Geo-fence configuration parameters. + * @param { WantAgent } want - Indicates which ability to start when the geofence event is triggered. + * @returns { void }. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301100 - The location switch is off. + * @throws { BusinessError } 3301600 - Failed to operate the geofence. + * @syscap SystemCapability.Location.Location.Geofence + * @since 9 + */ + function off(type: 'gnssFenceStatusChange', request: GeofenceRequest, want: WantAgent): void; + + /** + * Registering the callback function for listening to country code changes. + * @param { Callback } callback - Indicates the callback for reporting country code changes. + * @returns { void }. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 901 - The operating system or running environment does not support this api. * @throws { BusinessError } 3301000 - Location service is unavailable. * @throws { BusinessError } 3301100 - The location switch is off. * @throws { BusinessError } 3301500 - Failed to query the area information. + * @syscap SystemCapability.Location.Location.Core + * @since 9 */ function on(type: 'countryCodeChange', callback: Callback): void; /** * Unregistering the callback function for listening to country code changes. - * - * @since 9 - * @syscap SystemCapability.Location.Location.Core - * @param callback Indicates the callback for reporting country code changes. + * @param { Callback } [callback] - Indicates the callback for reporting country code changes. + * @returns { void }. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 901 - The operating system or running environment does not support this api. * @throws { BusinessError } 3301000 - Location service is unavailable. * @throws { BusinessError } 3301100 - The location switch is off. * @throws { BusinessError } 3301500 - Failed to query the area information. + * @syscap SystemCapability.Location.Location.Core + * @since 9 */ function off(type: 'countryCodeChange', callback?: Callback): void; /** - * Enable location switch - * + * Obtain current location. + * @permission ohos.permission.APPROXIMATELY_LOCATION + * @param { CurrentLocationRequest } request - Indicates the location request parameters. + * @param { AsyncCallback } callback - Indicates the callback for reporting the location result. + * @returns { void }. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301100 - The location switch is off. + * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. + * @syscap SystemCapability.Location.Location.Core + * @since 9 + */ + function getCurrentLocation(request: CurrentLocationRequest, callback: AsyncCallback): void; + + /** + * Obtain current location. + * @permission ohos.permission.APPROXIMATELY_LOCATION + * @param { AsyncCallback } callback - Indicates the callback for reporting the location result. + * @returns { void }. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301100 - The location switch is off. + * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. + * @syscap SystemCapability.Location.Location.Core * @since 9 + */ + function getCurrentLocation(callback: AsyncCallback): void; + + /** + * Obtain current location. + * @permission ohos.permission.APPROXIMATELY_LOCATION + * @param { CurrentLocationRequest } [request] - Indicates the location request parameters. + * @returns { Promise } The promise returned by the function. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301100 - The location switch is off. + * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. * @syscap SystemCapability.Location.Location.Core - * @systemapi + * @since 9 + */ + function getCurrentLocation(request?: CurrentLocationRequest): Promise; + + /** + * Obtain last known location. + * @permission ohos.permission.APPROXIMATELY_LOCATION + * @returns { Location } The last known location information. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301100 - The location switch is off. + * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. + * @syscap SystemCapability.Location.Location.Core + * @since 9 + */ + function getLastLocation(): Location; + + /** + * Obtain current location switch status. + * @returns { boolean } Returns {@code true} if the location switch on, returns {@code false} otherwise. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @syscap SystemCapability.Location.Location.Core + * @since 9 + */ + function isLocationEnabled(): boolean; + + /** + * Enable location switch. * @permission ohos.permission.MANAGE_SECURE_SETTINGS - * @param callback Indicates the callback for reporting the error message. + * @param { AsyncCallback } callback - Indicates the callback for reporting the error message. + * @returns { void }. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - System API is not allowed called by third HAP. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 901 - The operating system or running environment does not support this api. * @throws { BusinessError } 3301000 - Location service is unavailable. + * @syscap SystemCapability.Location.Location.Core + * @systemapi + * @since 9 */ function enableLocation(callback: AsyncCallback): void; - function enableLocation(): Promise; /** - * Disable location switch - * - * @since 9 + * Enable location switch. + * @permission ohos.permission.MANAGE_SECURE_SETTINGS + * @returns { Promise } The promise returned by the function. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 202 - System API is not allowed called by third HAP. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. * @syscap SystemCapability.Location.Location.Core * @systemapi + * @since 9 + */ + function enableLocation(): Promise; + + /** + * Disable location switch. * @permission ohos.permission.MANAGE_SECURE_SETTINGS - * @param callback Indicates the callback for reporting the error message. + * @returns { void }. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - System API is not allowed called by third HAP. - * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 901 - The operating system or running environment does not support this api. * @throws { BusinessError } 3301000 - Location service is unavailable. + * @syscap SystemCapability.Location.Location.Core + * @systemapi + * @since 9 */ - function disableLocation(callback: AsyncCallback): void; - function disableLocation(): Promise; + function disableLocation(): void; /** - * Obtain the current country code. - * + * Obtain address info from location. + * @param { ReverseGeoCodeRequest } request - Indicates the reverse geocode query parameters. + * @param { AsyncCallback> } callback - Indicates the callback for reporting the address info. + * @returns { void }. + * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301300 - Reverse geocoding query failed. + * @syscap SystemCapability.Location.Location.Geocoder * @since 9 - * @syscap SystemCapability.Location.Location.Core - * @param callback Indicates the callback for reporting the country code. + */ + function getAddressesFromLocation(request: ReverseGeoCodeRequest, callback: AsyncCallback>): void; + + /** + * Obtain address info from location. + * @param { ReverseGeoCodeRequest } request - Indicates the reverse geocode query parameters. + * @returns { Promise> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 901 - The operating system or running environment does not support this api. * @throws { BusinessError } 3301000 - Location service is unavailable. - * @throws { BusinessError } 3301500 - Failed to query the area information. + * @throws { BusinessError } 3301300 - Reverse geocoding query failed. + * @syscap SystemCapability.Location.Location.Geocoder + * @since 9 */ - function getCountryCode(callback: AsyncCallback): void; - function getCountryCode(): Promise; + function getAddressesFromLocation(request: ReverseGeoCodeRequest): Promise>; /** - * Enable the geographical location simulation function. - * + * Obtain latitude and longitude info from location address. + * @param { GeoCodeRequest } request - Indicates the geocode query parameters. + * @param { AsyncCallback> } callback - Indicates the callback for reporting the latitude and longitude result. + * @returns { void }. + * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301400 - Geocoding query failed. + * @syscap SystemCapability.Location.Location.Geocoder * @since 9 - * @syscap SystemCapability.Location.Location.Core - * @systemapi - * @param callback Indicates a callback function, which is used to report the error message. - * If the enabling fails, the error message will be carried in the first parameter - * err of AsyncCallback, If enabling succeeds, no data will be returned. - * @throws { BusinessError } 202 - System API is not allowed called by third HAP. + */ + function getAddressesFromLocationName(request: GeoCodeRequest, callback: AsyncCallback>): void; + + /** + * Obtain latitude and longitude info from location address. + * @param { GeoCodeRequest } request - Indicates the geocode query parameters. + * @returns { Promise> } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 901 - The operating system or running environment does not support this api. * @throws { BusinessError } 3301000 - Location service is unavailable. - * @throws { BusinessError } 3301100 - The location switch is off. + * @throws { BusinessError } 3301400 - Geocoding query failed. + * @syscap SystemCapability.Location.Location.Geocoder + * @since 9 */ - function enableLocationMock(callback: AsyncCallback): void; - function enableLocationMock(): Promise; + function getAddressesFromLocationName(request: GeoCodeRequest): Promise>; /** - * Disable the geographical location simulation function. - * + * Obtain geocoding service status. + * @returns { boolean } Returns {@code true} if geocoding service is available, returns {@code false} otherwise. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @syscap SystemCapability.Location.Location.Geocoder * @since 9 - * @syscap SystemCapability.Location.Location.Core - * @systemapi - * @param callback Indicates a callback function, which is used to report the result - * of disabling the location simulation function. If the disabling fails, the error message will - * be carried in the first parameter err of AsyncCallback, If disabling succeeds, no data will be returned. - * @throws { BusinessError } 202 - System API is not allowed called by third HAP. + */ + function isGeocoderAvailable(): boolean; + + /** + * Obtain the number of cached GNSS locations reported at a time. + * @permission ohos.permission.APPROXIMATELY_LOCATION + * @param { AsyncCallback } callback - Indicates the callback for reporting the cached GNSS locations size. + * @returns { void }. + * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 901 - The operating system or running environment does not support this api. * @throws { BusinessError } 3301000 - Location service is unavailable. * @throws { BusinessError } 3301100 - The location switch is off. + * @syscap SystemCapability.Location.Location.Gnss + * @since 9 */ - function disableLocationMock(callback: AsyncCallback): void; - function disableLocationMock(): Promise; + function getCachedGnssLocationsSize(callback: AsyncCallback): void; /** - * Set the configuration parameters for location simulation. - * + * Obtain the number of cached GNSS locations. + * @permission ohos.permission.APPROXIMATELY_LOCATION + * @returns { Promise } The promise returned by the function. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301100 - The location switch is off. + * @syscap SystemCapability.Location.Location.Gnss * @since 9 - * @syscap SystemCapability.Location.Location.Core - * @systemapi - * @param config Indicates the configuration parameters for location simulation. - * @param callback Indicates a callback function, which is used to report the result of setting - * the simulation locations. If the setting fails, the error message will be carried in the first - * parameter err of AsyncCallback. If the setting succeeds, no data will be returned. - * @throws { BusinessError } 202 - System API is not allowed called by third HAP. + */ + function getCachedGnssLocationsSize(): Promise; + + /** + * All prepared GNSS locations are returned to the application through the callback function, + * and the bottom-layer buffer is cleared. + * @permission ohos.permission.APPROXIMATELY_LOCATION + * @param { AsyncCallback } callback - Indicates the callback for reporting the error message. + * If the function fails to execute, the error message will be carried in the first parameter err of AsyncCallback, + * If the function executes successfully, execute the callback function only, no data will be returned. + * @returns { void }. + * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 901 - The operating system or running environment does not support this api. * @throws { BusinessError } 3301000 - Location service is unavailable. * @throws { BusinessError } 3301100 - The location switch is off. + * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. + * @syscap SystemCapability.Location.Location.Gnss + * @since 9 */ - function setMockedLocations(config: LocationMockConfig, callback: AsyncCallback): void; - function setMockedLocations(config: LocationMockConfig): Promise; + function flushCachedGnssLocations(callback: AsyncCallback): void; /** - * Enable the reverse geocoding simulation function. - * + * All prepared GNSS locations are returned to the application, + * and the bottom-layer buffer is cleared. + * @permission ohos.permission.APPROXIMATELY_LOCATION + * @returns { Promise } The promise returned by the function. + * @throws { BusinessError } 201 - Permission denied. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301100 - The location switch is off. + * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. + * @syscap SystemCapability.Location.Location.Gnss * @since 9 + */ + function flushCachedGnssLocations(): Promise; + + /** + * Send extended commands to location subsystem. + * @param { LocationCommand } command - Indicates the extended command message body. + * @param { AsyncCallback } callback - Indicates the callback for reporting the error message. + * If the function fails to execute, the error message will be carried in the first parameter err of AsyncCallback, + * If the function executes successfully, execute the callback function only, no data will be returned. + * @returns { void }. + * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. * @syscap SystemCapability.Location.Location.Core - * @systemapi - * @param callback Indicates a callback function, which is used to report the result - * of enabling the reverse geocode simulation function. If the enabling fails, the error message will - * be carried in the first parameter err of AsyncCallback, If enabling succeeds, no data will be returned. - * @throws { BusinessError } 202 - System API is not allowed called by third HAP. + * @since 9 + */ + function sendCommand(command: LocationCommand, callback: AsyncCallback): void; + + /** + * Send extended commands to location subsystem. + * @param { LocationCommand } command - Indicates the extended command message body. + * @returns { Promise } The promise returned by the function. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 901 - The operating system or running environment does not support this api. * @throws { BusinessError } 3301000 - Location service is unavailable. + * @syscap SystemCapability.Location.Location.Core + * @since 9 */ - function enableReverseGeocodingMock(callback: AsyncCallback): void; - function enableReverseGeocodingMock(): Promise; + function sendCommand(command: LocationCommand): Promise; /** - * Disable the reverse geocoding simulation function. - * + * Obtain the current country code. + * @param { AsyncCallback } callback - Indicates the callback for reporting the country code. + * @returns { void }. + * @throws { BusinessError } 401 - Parameter error. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301500 - Failed to query the area information. + * @syscap SystemCapability.Location.Location.Core * @since 9 + */ + function getCountryCode(callback: AsyncCallback): void; + + /** + * Obtain the current country code. + * @returns { Promise } The promise returned by the function. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301500 - Failed to query the area information. + * @syscap SystemCapability.Location.Location.Core + * @since 9 + */ + function getCountryCode(): Promise; + + /** + * Enable the geographical location simulation function. + * @returns { void }. + * @throws { BusinessError } 202 - System API is not allowed called by third HAP. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301100 - The location switch is off. * @syscap SystemCapability.Location.Location.Core * @systemapi - * @param callback Indicates a callback function, which is used to report the result - * of disabling the reverse geocode simulation function. If the disabling fails, the error message will - * be carried in the first parameter err of AsyncCallback, If disabling succeeds, no data will be returned. + * @since 9 + */ + function enableLocationMock(): void; + + /** + * Disable the geographical location simulation function. + * @returns { void }. * @throws { BusinessError } 202 - System API is not allowed called by third HAP. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301100 - The location switch is off. + * @syscap SystemCapability.Location.Location.Core + * @systemapi + * @since 9 + */ + function disableLocationMock(): void; + + /** + * Set the configuration parameters for location simulation. + * @param { LocationMockConfig } config - Indicates the configuration parameters for location simulation. + * Contains the array of locations and reporting intervals that need to be simulated. + * @returns { void }. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 901 - The operating system or running environment does not support this api. * @throws { BusinessError } 3301000 - Location service is unavailable. + * @throws { BusinessError } 3301100 - The location switch is off. + * @syscap SystemCapability.Location.Location.Core + * @systemapi + * @since 9 */ - function disableReverseGeocodingMock(callback: AsyncCallback): void; - function disableReverseGeocodingMock(): Promise; + function setMockedLocations(config: LocationMockConfig): void; /** - * Set the configuration parameters for simulating reverse geocoding. - * + * Enable the reverse geocoding simulation function. + * @returns { void }. + * @throws { BusinessError } 202 - System API is not allowed called by third HAP. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. + * @syscap SystemCapability.Location.Location.Core + * @systemapi * @since 9 + */ + function enableReverseGeocodingMock(): void; + + /** + * Disable the reverse geocoding simulation function. + * @returns { void }. + * @throws { BusinessError } 202 - System API is not allowed called by third HAP. + * @throws { BusinessError } 801 - Capability not supported. + * @throws { BusinessError } 3301000 - Location service is unavailable. * @syscap SystemCapability.Location.Location.Core * @systemapi - * @param mockInfos Indicates the set of locations and place names to be simulated. - * @param callback Indicates a callback function, which is used to report the result of setting - * the configuration parameters for simulating reverse geocoding. If the setting fails, - * the error message will be carried in the first parameter err of AsyncCallback. - * If the setting succeeds, no data will be returned. + * @since 9 + */ + function disableReverseGeocodingMock(): void; + + /** + * Set the configuration parameters for simulating reverse geocoding. + * @param { Array } mockInfos - Indicates the set of locations and place names to be simulated. + * @returns { void }. * @throws { BusinessError } 202 - System API is not allowed called by third HAP. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 901 - The operating system or running environment does not support this api. * @throws { BusinessError } 3301000 - Location service is unavailable. + * @syscap SystemCapability.Location.Location.Core + * @systemapi + * @since 9 */ - function setReverseGeocodingMockInfo(mockInfos: Array, callback: AsyncCallback): void; - function setReverseGeocodingMockInfo(mockInfos: Array): Promise; + function setReverseGeocodingMockInfo(mockInfos: Array): void; /** * Querying location privacy protocol confirmation status. - * - * @since 9 - * @systemapi - * @syscap SystemCapability.Location.Location.Core - * @param type indicates location privacy protocol type. - * @param callback indicates the callback for reporting the location privacy protocol confirmation status. + * @param { LocationPrivacyType } type - Indicates location privacy protocol type. + * @returns { boolean } Returns {@code true} if the location privacy protocol has been confirmed, returns {@code false} otherwise. * @throws { BusinessError } 202 - System API is not allowed called by third HAP. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 901 - The operating system or running environment does not support this api. * @throws { BusinessError } 3301000 - Location service is unavailable. + * @syscap SystemCapability.Location.Location.Core + * @systemapi + * @since 9 */ - function isLocationPrivacyConfirmed(type: LocationPrivacyType, callback: AsyncCallback): void; - function isLocationPrivacyConfirmed(type: LocationPrivacyType,): Promise; + function isLocationPrivacyConfirmed(type: LocationPrivacyType): boolean; /** * Set location privacy protocol confirmation status. - * - * @since 9 - * @systemapi - * @syscap SystemCapability.Location.Location.Core * @permission ohos.permission.MANAGE_SECURE_SETTINGS - * @param type indicates location privacy protocol type. - * @param isConfirmed indicates whether the location privacy protocol has been confirmed. - * @param callback Indicates the callback for reporting error message. + * @param { LocationPrivacyType } type - Indicates location privacy protocol type. + * @param { boolean } isConfirmed - Indicates whether the location privacy protocol has been confirmed. + * @returns { void }. * @throws { BusinessError } 201 - Permission denied. * @throws { BusinessError } 202 - System API is not allowed called by third HAP. * @throws { BusinessError } 401 - Parameter error. * @throws { BusinessError } 801 - Capability not supported. - * @throws { BusinessError } 901 - The operating system or running environment does not support this api. * @throws { BusinessError } 3301000 - Location service is unavailable. + * @syscap SystemCapability.Location.Location.Core + * @systemapi + * @since 9 */ - function setLocationPrivacyConfirmStatus(type: LocationPrivacyType, isConfirmed: boolean, callback: AsyncCallback): void; - function setLocationPrivacyConfirmStatus(type: LocationPrivacyType, isConfirmed: boolean): Promise; + function setLocationPrivacyConfirmStatus(type: LocationPrivacyType, isConfirmed: boolean): void; /** * Configuration parameters for simulating reverse geocoding. - * - * @since 9 + * @typedef ReverseGeocodingMockInfo * @syscap SystemCapability.Location.Location.Core * @systemapi + * @since 9 */ export interface ReverseGeocodingMockInfo { + /** + * Location for which reverse geocoding query is required. + * @type { ReverseGeoCodeRequest } + * @systemapi + * @since 9 + */ location: ReverseGeoCodeRequest; + + /** + * Actual address information corresponding to the location. + * @type { GeoAddress } + * @systemapi + * @since 9 + */ geoAddress: GeoAddress; } /** * Parameters for configuring the location simulation function. - * - * @since 9 + * @typedef LocationMockConfig * @syscap SystemCapability.Location.Location.Core * @systemapi + * @since 9 */ export interface LocationMockConfig { + /** + * Interval for reporting simulated locations. + * @type { number } + * @systemapi + * @since 9 + */ timeInterval: number; + + /** + * Mock location array. + * @type { Array } + * @systemapi + * @since 9 + */ locations: Array; } /** - * Satellite status information - * - * @since 9 + * Satellite status information. + * @typedef SatelliteStatusInfo * @syscap SystemCapability.Location.Location.Gnss + * @since 9 */ export interface SatelliteStatusInfo { + /** + * Number of satellites. + * @type { number } + * @since 9 + */ satellitesNumber: number; + + /** + * Satellite ID array. + * @type { Array } + * @since 9 + */ satelliteIds: Array; + + /** + * Carrier to noise density array. + * @type { Array } + * @since 9 + */ carrierToNoiseDensitys: Array; + + /** + * Satellite altitude array. + * @type { Array } + * @since 9 + */ altitudes: Array; + + /** + * Satellite azimuth array. + * @type { Array } + * @since 9 + */ azimuths: Array; + + /** + * Satellite carrier frequency array. + * @type { Array } + * @since 9 + */ carrierFrequencies: Array; } /** - * Parameters for requesting to report cache location information - * - * @since 9 + * Parameters for requesting to report cache location information. + * @typedef CachedGnssLocationsRequest * @syscap SystemCapability.Location.Location.Gnss + * @since 9 */ export interface CachedGnssLocationsRequest { + /** + * GNSS cache location report period. + * @type { number } + * @since 9 + */ reportingPeriodSec: number; + + /** + * Indicates whether to wake up the listener when the GNSS cache location queue is full. + * @type { boolean } + * @since 9 + */ wakeUpCacheQueueFull: boolean; } /** - * Configuring parameters in geo fence requests - * - * @since 9 + * Configuring parameters in geo fence requests. + * @typedef GeofenceRequest * @syscap SystemCapability.Location.Location.Geofence + * @since 9 */ export interface GeofenceRequest { - priority: LocationRequestPriority; + /** + * Indicate the user scenario. + * @type { LocationRequestScenario } + * @since 9 + */ scenario: LocationRequestScenario; + + /** + * Circular fence information. + * @type { Geofence } + * @since 9 + */ geofence: Geofence; } /** - * Configuring parameters in geo fence requests - * - * @since 9 + * Circular fence information. + * @typedef Geofence * @syscap SystemCapability.Location.Location.Geofence + * @since 9 */ export interface Geofence { + /** + * Latitude of the center point of the circular fence. + * @type { number } + * @since 9 + */ latitude: number; + + /** + * Longitude of the center point of the circular fence. + * @type { number } + * @since 9 + */ longitude: number; + + /** + * Radius of the circular fence. + * @type { number } + * @since 9 + */ radius: number; + + /** + * Expiration of the circular fence. + * @type { number } + * @since 9 + */ expiration: number; } /** - * Configuring parameters in reverse geocode requests - * - * @since 9 + * Configuring parameters in reverse geocode requests. + * @typedef ReverseGeoCodeRequest * @syscap SystemCapability.Location.Location.Geocoder + * @since 9 */ export interface ReverseGeoCodeRequest { + /** + * Indicates the language area information. + * @type { ?string } + * @since 9 + */ locale?: string; + + /** + * Latitude for reverse geocoding query. + * @type { number } + * @since 9 + */ latitude: number; + + /** + * Longitude for reverse geocoding query. + * @type { number } + * @since 9 + */ longitude: number; + + /** + * Indicates the maximum number of addresses returned by reverse geocoding query. + * @type { ?number } + * @since 9 + */ maxItems?: number; } /** - * Configuring parameters in geocode requests - * - * @since 9 + * Configuring parameters in geocode requests. + * @typedef GeoCodeRequest * @syscap SystemCapability.Location.Location.Geocoder + * @since 9 */ export interface GeoCodeRequest { + /** + * Indicates the language area information. + * @type { ?string } + * @since 9 + */ locale?: string; + + /** + * Address information that needs to be geocoded. + * @type { string } + * @since 9 + */ description: string; + + /** + * Indicates the maximum number of geocode query results. + * @type { ?number } + * @since 9 + */ maxItems?: number; + + /** + * Indicates the minimum latitude for geocoding query results. + * @type { ?number } + * @since 9 + */ minLatitude?: number; + + /** + * Indicates the minimum longitude for geocoding query results. + * @type { ?number } + * @since 9 + */ minLongitude?: number; + + /** + * Indicates the maximum latitude for geocoding query results. + * @type { ?number } + * @since 9 + */ maxLatitude?: number; + + /** + * Indicates the maximum longitude for geocoding query results. + * @type { ?number } + * @since 9 + */ maxLongitude?: number; } /** * Data struct describes geographic locations. - * - * @since 9 + * @typedef GeoAddress * @syscap SystemCapability.Location.Location.Geocoder + * @since 9 */ export interface GeoAddress { /** * Indicates latitude information. * A positive value indicates north latitude, * and a negative value indicates south latitude. + * @type { ?number } * @since 9 */ latitude?: number; @@ -376,7 +930,8 @@ declare namespace geoLocationManager { /** * Indicates longitude information. * A positive value indicates east longitude , - * and a negative value indicates west longitude . + * and a negative value indicates west longitude. + * @type { ?number } * @since 9 */ longitude?: number; @@ -384,145 +939,216 @@ declare namespace geoLocationManager { /** * Indicates language used for the location description. * zh indicates Chinese, and en indicates English. + * @type { ?string } * @since 9 */ locale?: string; /** * Indicates landmark of the location. + * @type { ?string } * @since 9 */ placeName?: string; /** * Indicates country code. + * @type { ?string } * @since 9 */ countryCode?: string; /** * Indicates country name. + * @type { ?string } * @since 9 */ countryName?: string; /** * Indicates administrative region name. + * @type { ?string } * @since 9 */ administrativeArea?: string; /** * Indicates sub-administrative region name. + * @type { ?string } * @since 9 */ subAdministrativeArea?: string; /** * Indicates locality information. + * @type { ?string } * @since 9 */ locality?: string; /** * Indicates sub-locality information. + * @type { ?string } * @since 9 */ subLocality?: string; /** * Indicates road name. + * @type { ?string } * @since 9 */ roadName?: string; /** * Indicates auxiliary road information. + * @type { ?string } * @since 9 */ subRoadName?: string; /** * Indicates house information. + * @type { ?string } * @since 9 */ premises?: string; /** * Indicates postal code. + * @type { ?string } * @since 9 */ postalCode?: string; /** * Indicates phone number. + * @type { ?string } * @since 9 */ phoneNumber?: string; /** * Indicates website URL. + * @type { ?string } * @since 9 */ addressUrl?: string; /** * Indicates additional information. + * @type { ?Array } * @since 9 */ descriptions?: Array; /** * Indicates the amount of additional descriptive information. + * @type { ?number } * @since 9 */ descriptionsSize?: number; /** * Indicates whether it is an mock GeoAddress + * @type { ?Boolean } + * @systemapi * @since 9 */ isFromMock?: Boolean; } /** - * Configuring parameters in location requests - * - * @since 9 + * Configuring parameters in location requests. + * @typedef LocationRequest * @syscap SystemCapability.Location.Location.Core + * @since 9 */ export interface LocationRequest { + /** + * Priority of the location request. + * @type { ?LocationRequestPriority } + * @since 9 + */ priority?: LocationRequestPriority; + + /** + * User scenario of the location request. + * @type { ?LocationRequestScenario } + * @since 9 + */ scenario?: LocationRequestScenario; + + /** + * Location report interval. + * @type { ?number } + * @since 9 + */ timeInterval?: number; + + /** + * Location report distance interval. + * @type { ?number } + * @since 9 + */ distanceInterval?: number; + + /** + * Accuracy requirements for reporting locations. + * @type { ?number } + * @since 9 + */ maxAccuracy?: number; } /** - * Configuring parameters in current location requests - * - * @since 9 + * Configuring parameters in current location requests. + * @typedef CurrentLocationRequest * @syscap SystemCapability.Location.Location.Core + * @since 9 */ export interface CurrentLocationRequest { + /** + * Priority of the location request. + * @type { ?LocationRequestPriority } + * @since 9 + */ priority?: LocationRequestPriority; + + /** + * User scenario of the location request. + * @type { ?LocationRequestScenario } + * @since 9 + */ scenario?: LocationRequestScenario; + + /** + * Accuracy requirements for reporting locations. + * @type { ?number } + * @since 9 + */ maxAccuracy?: number; + + /** + * Timeout interval of a single location request. + * @type { ?number } + * @since 9 + */ timeoutMs?: number; } /** - * Provides information about geographic locations - * - * @since 9 + * Provides information about geographic locations. + * @typedef Location * @syscap SystemCapability.Location.Location.Core + * @since 9 */ export interface Location { /** * Indicates latitude information. * A positive value indicates north latitude, * and a negative value indicates south latitude. + * @type { number } * @since 9 */ latitude: number; @@ -530,138 +1156,273 @@ declare namespace geoLocationManager { /** * Indicates Longitude information. * A positive value indicates east longitude , - * and a negative value indicates west longitude . + * and a negative value indicates west longitude. + * @type { number } * @since 9 */ longitude: number; /** * Indicates location altitude, in meters. + * @type { number } * @since 9 */ altitude: number; /** * Indicates location accuracy, in meters. + * @type { number } * @since 9 */ accuracy: number; /** * Indicates speed, in m/s. + * @type { number } * @since 9 */ speed: number; /** * Indicates location timestamp in the UTC format. + * @type { number } * @since 9 */ timeStamp: number; /** * Indicates direction information. + * @type { number } * @since 9 */ direction: number; /** * Indicates location timestamp since boot. + * @type { number } * @since 9 */ timeSinceBoot: number; /** * Indicates additional information. + * @type { ?Array } * @since 9 */ additions?: Array; /** * Indicates the amount of additional descriptive information. + * @type { ?number } * @since 9 */ additionSize?: number; /** * Indicates whether it is an mock location. + * @type { ?Boolean } + * @systemapi * @since 9 */ isFromMock?: Boolean; } /** - * Enum for location priority - * - * @since 9 + * Enum for location priority. + * @enum { number } * @syscap SystemCapability.Location.Location.Core + * @since 9 */ export enum LocationRequestPriority { + /** + * Default priority. + * @syscap SystemCapability.Location.Location.Core + * @since 9 + */ UNSET = 0x200, + + /** + * Preferentially ensure the locating accuracy. + * @syscap SystemCapability.Location.Location.Core + * @since 9 + */ ACCURACY, + + /** + * Preferentially ensure low power consumption for locating. + * @syscap SystemCapability.Location.Location.Core + * @since 9 + */ LOW_POWER, + + /** + * Preferentially ensure that the first location is time-consuming. + * @syscap SystemCapability.Location.Location.Core + * @since 9 + */ FIRST_FIX, } /** - * Enum for location scenario - * - * @since 9 + * Enum for location scenario. + * @enum { number } * @syscap SystemCapability.Location.Location.Core + * @since 9 */ export enum LocationRequestScenario { + /** + * Default scenario. + * @syscap SystemCapability.Location.Location.Core + * @since 9 + */ UNSET = 0x300, + + /** + * Navigation scenario. High positioning precision and real-time performance are required. + * @syscap SystemCapability.Location.Location.Core + * @since 9 + */ NAVIGATION, + + /** + * Trajectory tracking scenario. High positioning precision is required. + * @syscap SystemCapability.Location.Location.Core + * @since 9 + */ TRAJECTORY_TRACKING, + + /** + * Car hailing scenario. High positioning precision and real-time performance are required. + * @syscap SystemCapability.Location.Location.Core + * @since 9 + */ CAR_HAILING, + + /** + * Daily life scenarios. Low requirements on positioning precision and real-time performance. + * @syscap SystemCapability.Location.Location.Core + * @since 9 + */ DAILY_LIFE_SERVICE, + + /** + * Power saving scenarios. + * @syscap SystemCapability.Location.Location.Core + * @since 9 + */ NO_POWER, } /** - * Enum for location privacy type - * - * @since 9 + * Enum for location privacy type. + * @enum { number } * @syscap SystemCapability.Location.Location.Core + * @systemapi + * @since 9 */ export enum LocationPrivacyType { + /** + * Other scenarios. + * @syscap SystemCapability.Location.Location.Core + * @systemapi + * @since 9 + */ OTHERS = 0, + + /** + * Privacy agreement for the startup wizard scenario. + * @syscap SystemCapability.Location.Location.Core + * @systemapi + * @since 9 + */ STARTUP, + + /** + * Privacy agreement pop-up when network location is enabled. + * @syscap SystemCapability.Location.Location.Core + * @systemapi + * @since 9 + */ CORE_LOCATION, } /** - * Location subsystem command structure - * - * @since 9 + * Location subsystem command structure. + * @typedef LocationCommand * @syscap SystemCapability.Location.Location.Core + * @since 9 */ export interface LocationCommand { + /** + * Information about the scenario where the command is sent. + * @type { LocationRequestScenario } + * @since 9 + */ scenario: LocationRequestScenario; + + /** + * Sent command content. + * @type { string } + * @since 9 + */ command: string; } /** - * Country code structure - * - * @since 9 + * Country code structure. + * @typedef CountryCode * @syscap SystemCapability.Location.Location.Core + * @since 9 */ export interface CountryCode { + /** + * Country code character string. + * @type { string } + * @since 9 + */ country: string; + + /** + * Country code source. + * @type { CountryCodeType } + * @since 9 + */ type: CountryCodeType; } /** - * Enum for country code type - * - * @since 9 + * Enum for country code type. + * @enum { number } * @syscap SystemCapability.Location.Location.Core + * @since 9 */ export enum CountryCodeType { + /** + * Country code obtained from the locale setting. + * @syscap SystemCapability.Location.Location.Core + * @since 9 + */ COUNTRY_CODE_FROM_LOCALE = 1, + + /** + * Country code obtained from the SIM information. + * @syscap SystemCapability.Location.Location.Core + * @since 9 + */ COUNTRY_CODE_FROM_SIM, + + /** + * Obtains the current location for geocoded query and obtains the country code from the result. + * @syscap SystemCapability.Location.Location.Core + * @since 9 + */ COUNTRY_CODE_FROM_LOCATION, + + /** + * Obtain the country code from the cell registration information. + * @syscap SystemCapability.Location.Location.Core + * @since 9 + */ COUNTRY_CODE_FROM_NETWORK, } } diff --git a/api/@ohos.geolocation.d.ts b/api/@ohos.geolocation.d.ts index 030e40bc90..92185f5aa9 100644 --- a/api/@ohos.geolocation.d.ts +++ b/api/@ohos.geolocation.d.ts @@ -22,6 +22,7 @@ import { WantAgent } from './@ohos.wantAgent'; * @since 7 * @syscap SystemCapability.Location.Location.Core * @permission ohos.permission.LOCATION + * @deprecated since 9 */ declare namespace geolocation { /** @@ -32,6 +33,8 @@ declare namespace geolocation { * @permission ohos.permission.LOCATION * @param request Indicates the location request parameters. * @param callback Indicates the callback for reporting the location result. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.on#event:locationChange */ function on(type: 'locationChange', request: LocationRequest, callback: Callback): void; @@ -42,6 +45,8 @@ declare namespace geolocation { * @syscap SystemCapability.Location.Location.Core * @permission ohos.permission.LOCATION * @param callback Indicates the callback for reporting the location result. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.off#event:locationChange */ function off(type: 'locationChange', callback?: Callback): void; @@ -52,6 +57,8 @@ declare namespace geolocation { * @syscap SystemCapability.Location.Location.Core * @permission ohos.permission.LOCATION * @param callback Indicates the callback for reporting the location result. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.on#event:locationEnabledChange */ function on(type: 'locationServiceState', callback: Callback): void; @@ -62,6 +69,8 @@ declare namespace geolocation { * @syscap SystemCapability.Location.Location.Core * @permission ohos.permission.LOCATION * @param callback Indicates the callback for reporting the location result. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.off#event:locationEnabledChange */ function off(type: 'locationServiceState', callback?: Callback): void; @@ -73,6 +82,8 @@ declare namespace geolocation { * @permission ohos.permission.LOCATION * @param request Indicates the cached GNSS locations request parameters. * @param callback Indicates the callback for reporting the cached GNSS locations. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.on#event:cachedGnssLocationsChange */ function on(type: 'cachedGnssLocationsReporting', request: CachedGnssLocationsRequest, callback: Callback>): void; @@ -83,6 +94,8 @@ declare namespace geolocation { * @syscap SystemCapability.Location.Location.Gnss * @permission ohos.permission.LOCATION * @param callback Indicates the callback for reporting the cached gnss locations. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.off#event:cachedGnssLocationsChange */ function off(type: 'cachedGnssLocationsReporting', callback?: Callback>): void; @@ -93,6 +106,8 @@ declare namespace geolocation { * @syscap SystemCapability.Location.Location.Gnss * @permission ohos.permission.LOCATION * @param callback Indicates the callback for reporting the gnss status change. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.on#event:satelliteStatusChange */ function on(type: 'gnssStatusChange', callback: Callback): void; @@ -103,6 +118,8 @@ declare namespace geolocation { * @syscap SystemCapability.Location.Location.Gnss * @permission ohos.permission.LOCATION * @param callback Indicates the callback for reporting the gnss status change. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.off#event:satelliteStatusChange */ function off(type: 'gnssStatusChange', callback?: Callback): void; @@ -113,6 +130,8 @@ declare namespace geolocation { * @syscap SystemCapability.Location.Location.Gnss * @permission ohos.permission.LOCATION * @param callback Indicates the callback for reporting the nmea message. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.on#event:nmeaMessage */ function on(type: 'nmeaMessageChange', callback: Callback): void; @@ -123,6 +142,8 @@ declare namespace geolocation { * @syscap SystemCapability.Location.Location.Gnss * @permission ohos.permission.LOCATION * @param callback Indicates the callback for reporting the nmea message. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.off#event:nmeaMessage */ function off(type: 'nmeaMessageChange', callback?: Callback): void; @@ -134,6 +155,8 @@ declare namespace geolocation { * @permission ohos.permission.LOCATION * @param request Indicates the Geo-fence configuration parameters. * @param callback Indicates the callback for reporting the fence status. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.on#event:gnssFenceStatusChange */ function on(type: 'fenceStatusChange', request: GeofenceRequest, want: WantAgent): void; @@ -145,6 +168,8 @@ declare namespace geolocation { * @permission ohos.permission.LOCATION * @param request Indicates the Geo-fence configuration parameters. * @param callback Indicates the callback for reporting the remove fence result. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.off#event:gnssFenceStatusChange */ function off(type: 'fenceStatusChange', request: GeofenceRequest, want: WantAgent): void; @@ -155,6 +180,8 @@ declare namespace geolocation { * @syscap SystemCapability.Location.Location.Core * @permission ohos.permission.LOCATION * @param callback Indicates the callback for reporting the location result. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.getCurrentLocation */ function getCurrentLocation(request: CurrentLocationRequest, callback: AsyncCallback): void; function getCurrentLocation(callback: AsyncCallback): void; @@ -167,6 +194,8 @@ declare namespace geolocation { * @syscap SystemCapability.Location.Location.Core * @permission ohos.permission.LOCATION * @param callback Indicates the callback for reporting the location result. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.getLastLocation */ function getLastLocation(callback: AsyncCallback): void; function getLastLocation(): Promise; @@ -178,6 +207,8 @@ declare namespace geolocation { * @syscap SystemCapability.Location.Location.Core * @permission ohos.permission.LOCATION * @param callback Indicates the callback for reporting the location switch result. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.isLocationEnabled */ function isLocationEnabled(callback: AsyncCallback): void; function isLocationEnabled(): Promise; @@ -189,34 +220,11 @@ declare namespace geolocation { * @syscap SystemCapability.Location.Location.Core * @permission ohos.permission.LOCATION * @param callback Indicates the callback for reporting the location switch status. + * @deprecated since 9 */ function requestEnableLocation(callback: AsyncCallback): void; function requestEnableLocation(): Promise; - /** - * enable location switch - * - * @since 7 - * @syscap SystemCapability.Location.Location.Core - * @systemapi - * @permission ohos.permission.MANAGE_SECURE_SETTINGS - * @param callback Indicates the callback for reporting the location switch result. - */ - function enableLocation(callback: AsyncCallback): void; - function enableLocation(): Promise; - - /** - * disable location switch - * - * @since 7 - * @syscap SystemCapability.Location.Location.Core - * @systemapi - * @permission ohos.permission.MANAGE_SECURE_SETTINGS - * @param callback Indicates the callback for reporting the location switch result. - */ - function disableLocation(callback: AsyncCallback): void; - function disableLocation(): Promise; - /** * obtain address info from location * @@ -224,6 +232,8 @@ declare namespace geolocation { * @syscap SystemCapability.Location.Location.Geocoder * @permission ohos.permission.LOCATION * @param callback Indicates the callback for reporting the address info. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.getAddressesFromLocation */ function getAddressesFromLocation(request: ReverseGeoCodeRequest, callback: AsyncCallback>): void; function getAddressesFromLocation(request: ReverseGeoCodeRequest): Promise>; @@ -235,6 +245,8 @@ declare namespace geolocation { * @syscap SystemCapability.Location.Location.Geocoder * @permission ohos.permission.LOCATION * @param callback Indicates the callback for reporting the latitude and longitude result. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.getAddressesFromLocationName */ function getAddressesFromLocationName(request: GeoCodeRequest, callback: AsyncCallback>): void; function getAddressesFromLocationName(request: GeoCodeRequest): Promise>; @@ -246,6 +258,8 @@ declare namespace geolocation { * @syscap SystemCapability.Location.Location.Geocoder * @permission ohos.permission.LOCATION * @param callback Indicates the callback for reporting the geocode service status. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.isGeocoderAvailable */ function isGeoServiceAvailable(callback: AsyncCallback): void; function isGeoServiceAvailable(): Promise; @@ -257,6 +271,8 @@ declare namespace geolocation { * @syscap SystemCapability.Location.Location.Gnss * @permission ohos.permission.LOCATION * @param callback Indicates the callback for reporting the cached GNSS locations size. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.getCachedGnssLocationsSize */ function getCachedGnssLocationsSize(callback: AsyncCallback): void; function getCachedGnssLocationsSize(): Promise; @@ -269,6 +285,8 @@ declare namespace geolocation { * @syscap SystemCapability.Location.Location.Gnss * @permission ohos.permission.LOCATION * @param callback Indicates the callback for reporting the result. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.flushCachedGnssLocations */ function flushCachedGnssLocations(callback: AsyncCallback): void; function flushCachedGnssLocations(): Promise; @@ -281,6 +299,8 @@ declare namespace geolocation { * @permission ohos.permission.LOCATION * @param command Indicates the extended Command Message Body. * @param callback Indicates the callback for reporting the send command result. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.sendCommand */ function sendCommand(command: LocationCommand, callback: AsyncCallback): void; function sendCommand(command: LocationCommand): Promise; @@ -291,6 +311,8 @@ declare namespace geolocation { * @since 8 * @syscap SystemCapability.Location.Location.Gnss * @permission ohos.permission.LOCATION + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.SatelliteStatusInfo */ export interface SatelliteStatusInfo { satellitesNumber: number; @@ -307,6 +329,8 @@ declare namespace geolocation { * @since 8 * @syscap SystemCapability.Location.Location.Gnss * @permission ohos.permission.LOCATION + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.CachedGnssLocationsRequest */ export interface CachedGnssLocationsRequest { reportingPeriodSec: number; @@ -319,6 +343,8 @@ declare namespace geolocation { * @since 8 * @syscap SystemCapability.Location.Location.Geofence * @permission ohos.permission.LOCATION + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.GeofenceRequest */ export interface GeofenceRequest { priority: LocationRequestPriority; @@ -332,6 +358,8 @@ declare namespace geolocation { * @since 8 * @syscap SystemCapability.Location.Location.Geofence * @permission ohos.permission.LOCATION + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.Geofence */ export interface Geofence { latitude: number; @@ -346,6 +374,8 @@ declare namespace geolocation { * @since 7 * @syscap SystemCapability.Location.Location.Geocoder * @permission ohos.permission.LOCATION + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.ReverseGeoCodeRequest */ export interface ReverseGeoCodeRequest { locale?: string; @@ -360,6 +390,8 @@ declare namespace geolocation { * @since 7 * @syscap SystemCapability.Location.Location.Geocoder * @permission ohos.permission.LOCATION + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.GeoCodeRequest */ export interface GeoCodeRequest { locale?: string; @@ -377,6 +409,8 @@ declare namespace geolocation { * @since 7 * @syscap SystemCapability.Location.Location.Geocoder * @permission ohos.permission.LOCATION + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.GeoAddress */ export interface GeoAddress { /** @@ -499,6 +533,8 @@ declare namespace geolocation { * @since 7 * @syscap SystemCapability.Location.Location.Core * @permission ohos.permission.LOCATION + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.LocationRequest */ export interface LocationRequest { priority?: LocationRequestPriority; @@ -514,6 +550,8 @@ declare namespace geolocation { * @since 7 * @syscap SystemCapability.Location.Location.Core * @permission ohos.permission.LOCATION + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.CurrentLocationRequest */ export interface CurrentLocationRequest { priority?: LocationRequestPriority; @@ -528,6 +566,8 @@ declare namespace geolocation { * @since 7 * @syscap SystemCapability.Location.Location.Core * @permission ohos.permission.LOCATION + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.Location */ export interface Location { /** @@ -601,6 +641,8 @@ declare namespace geolocation { * @since 7 * @syscap SystemCapability.Location.Location.Core * @permission ohos.permission.LOCATION + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.LocationRequestPriority */ export enum LocationRequestPriority { UNSET = 0x200, @@ -615,6 +657,8 @@ declare namespace geolocation { * @since 7 * @syscap SystemCapability.Location.Location.Core * @permission ohos.permission.LOCATION + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.LocationRequestScenario */ export enum LocationRequestScenario { UNSET = 0x300, @@ -631,6 +675,7 @@ declare namespace geolocation { * @since 7 * @syscap SystemCapability.Location.Location.Core * @permission ohos.permission.LOCATION + * @deprecated since 9 */ export enum GeoLocationErrorCode { /** @@ -682,6 +727,8 @@ declare namespace geolocation { * @since 8 * @syscap SystemCapability.Location.Location.Core * @permission ohos.permission.LOCATION + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.LocationPrivacyType */ export enum LocationPrivacyType { OTHERS = 0, @@ -695,6 +742,8 @@ declare namespace geolocation { * @since 8 * @syscap SystemCapability.Location.Location.Core * @permission ohos.permission.LOCATION + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.LocationCommand */ export interface LocationCommand { scenario: LocationRequestScenario; diff --git a/api/@system.geolocation.d.ts b/api/@system.geolocation.d.ts index d47a68ef7e..c6a47550ee 100644 --- a/api/@system.geolocation.d.ts +++ b/api/@system.geolocation.d.ts @@ -15,6 +15,8 @@ /** * @syscap SystemCapability.Location.Location.Lite + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.Location */ export interface GeolocationResponse { /** @@ -51,6 +53,8 @@ export interface GeolocationResponse { /** * @syscap SystemCapability.Location.Location.Lite * @permission ohos.permission.LOCATION + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.CurrentLocationRequest */ export interface GetLocationOption { /** @@ -92,6 +96,7 @@ export interface GetLocationOption { /** * @syscap SystemCapability.Location.Location.Lite + * @deprecated since 9 */ export interface GetLocationTypeResponse { /** @@ -102,6 +107,7 @@ export interface GetLocationTypeResponse { /** * @syscap SystemCapability.Location.Location.Lite + * @deprecated since 9 */ export interface GetLocationTypeOption { /** @@ -126,6 +132,8 @@ export interface GetLocationTypeOption { /** * @syscap SystemCapability.Location.Location.Lite * @permission ohos.permission.LOCATION + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.LocationRequest */ export interface SubscribeLocationOption { /** @@ -150,18 +158,23 @@ export interface SubscribeLocationOption { /** * @syscap SystemCapability.Location.Location.Lite + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager */ export default class Geolocation { /** * Obtains the geographic location. * @permission ohos.permission.LOCATION * @param options Options. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.getCurrentLocation */ static getLocation(options?: GetLocationOption): void; /** * Obtains the location types supported by the system. * @param options Options. + * @deprecated since 9 */ static getLocationType(options?: GetLocationTypeOption): void; @@ -169,18 +182,23 @@ export default class Geolocation { * Listens to the geographical location. If this method is called multiple times, the last call takes effect. * @permission ohos.permission.LOCATION * @param options Options. + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.on#event:locationChange */ static subscribe(options: SubscribeLocationOption): void; /** * Cancels listening to the geographical location. * @permission ohos.permission.LOCATION + * @deprecated since 9 + * @useinstead ohos.geoLocationManager/geoLocationManager.off#event:locationChange */ static unsubscribe(): void; /** * Obtains the supported coordinate system types. * @returns A string array of the supported coordinate system types, for example, ['wgs84']. + * @deprecated since 9 */ static getSupportedCoordTypes(): Array; } -- Gitee