161847f8eSopenharmony_ci/* 261847f8eSopenharmony_ci * Copyright (c) 2022 Huawei Device Co., Ltd. 361847f8eSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 461847f8eSopenharmony_ci * you may not use this file except in compliance with the License. 561847f8eSopenharmony_ci * You may obtain a copy of the License at 661847f8eSopenharmony_ci * 761847f8eSopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 861847f8eSopenharmony_ci * 961847f8eSopenharmony_ci * Unless required by applicable law or agreed to in writing, software 1061847f8eSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 1161847f8eSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1261847f8eSopenharmony_ci * See the License for the specific language governing permissions and 1361847f8eSopenharmony_ci * limitations under the License. 1461847f8eSopenharmony_ci */ 1561847f8eSopenharmony_ci 1661847f8eSopenharmony_ci/** 1761847f8eSopenharmony_ci * @file 1861847f8eSopenharmony_ci * @kit LocationKit 1961847f8eSopenharmony_ci */ 2061847f8eSopenharmony_ci 2161847f8eSopenharmony_ciimport { AsyncCallback, Callback } from './@ohos.base'; 2261847f8eSopenharmony_ciimport { WantAgent } from './@ohos.wantAgent'; 2361847f8eSopenharmony_ciimport { NotificationRequest } from './notification/notificationRequest'; 2461847f8eSopenharmony_ci 2561847f8eSopenharmony_ci/** 2661847f8eSopenharmony_ci * Provides interfaces for acquiring location information, managing location switches, 2761847f8eSopenharmony_ci * geocoding, reverse geocoding, country code, fencing and other functions. 2861847f8eSopenharmony_ci * 2961847f8eSopenharmony_ci * @namespace geoLocationManager 3061847f8eSopenharmony_ci * @since 9 3161847f8eSopenharmony_ci */ 3261847f8eSopenharmony_ci/** 3361847f8eSopenharmony_ci * Provides interfaces for acquiring location information, managing location switches, 3461847f8eSopenharmony_ci * geocoding, reverse geocoding, country code, fencing and other functions. 3561847f8eSopenharmony_ci * 3661847f8eSopenharmony_ci * @namespace geoLocationManager 3761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 3861847f8eSopenharmony_ci * @atomicservice 3961847f8eSopenharmony_ci * @since 11 4061847f8eSopenharmony_ci */ 4161847f8eSopenharmony_cideclare namespace geoLocationManager { 4261847f8eSopenharmony_ci /** 4361847f8eSopenharmony_ci * Subscribe location changed. 4461847f8eSopenharmony_ci * 4561847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 4661847f8eSopenharmony_ci * @param { 'locationChange' } type - Indicates the location service event to be subscribed to. 4761847f8eSopenharmony_ci * @param { LocationRequest } request - Indicates the location request parameters. 4861847f8eSopenharmony_ci * @param { Callback<Location> } callback - Indicates the callback for reporting the location result. 4961847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 5061847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 5161847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.on('locationChange')} due to limited device capabilities. 5261847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 5361847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 5461847f8eSopenharmony_ci * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. 5561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 5661847f8eSopenharmony_ci * @since 9 5761847f8eSopenharmony_ci */ 5861847f8eSopenharmony_ci /** 5961847f8eSopenharmony_ci * Subscribe location changed. 6061847f8eSopenharmony_ci * 6161847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 6261847f8eSopenharmony_ci * @param { 'locationChange' } type - Indicates the location service event to be subscribed to. 6361847f8eSopenharmony_ci * @param { LocationRequest } request - Indicates the location request parameters. 6461847f8eSopenharmony_ci * @param { Callback<Location> } callback - Indicates the callback for reporting the location result. 6561847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 6661847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 6761847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.on('locationChange')} due to limited device capabilities. 6861847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 6961847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 7061847f8eSopenharmony_ci * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. 7161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 7261847f8eSopenharmony_ci * @atomicservice 7361847f8eSopenharmony_ci * @since 11 7461847f8eSopenharmony_ci */ 7561847f8eSopenharmony_ci /** 7661847f8eSopenharmony_ci * Subscribe location changed. 7761847f8eSopenharmony_ci * 7861847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 7961847f8eSopenharmony_ci * @param { 'locationChange' } type - Indicates the location service event to be subscribed to. 8061847f8eSopenharmony_ci * @param { LocationRequest | ContinuousLocationRequest } request - Indicates the location request parameters. 8161847f8eSopenharmony_ci * @param { Callback<Location> } callback - Indicates the callback for reporting the location result. 8261847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 8361847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 8461847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.on('locationChange')} due to limited device capabilities. 8561847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 8661847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 8761847f8eSopenharmony_ci * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. 8861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 8961847f8eSopenharmony_ci * @atomicservice 9061847f8eSopenharmony_ci * @since 12 9161847f8eSopenharmony_ci */ 9261847f8eSopenharmony_ci function on(type: 'locationChange', request: LocationRequest | ContinuousLocationRequest, 9361847f8eSopenharmony_ci callback: Callback<Location>): void; 9461847f8eSopenharmony_ci 9561847f8eSopenharmony_ci /** 9661847f8eSopenharmony_ci * Unsubscribe location changed. 9761847f8eSopenharmony_ci * 9861847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 9961847f8eSopenharmony_ci * @param { 'locationChange' } type - Indicates the location service event to be subscribed to. 10061847f8eSopenharmony_ci * @param { Callback<Location> } [callback] - Indicates the callback for reporting the location result. 10161847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 10261847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 10361847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.off('locationChange')} due to limited device capabilities. 10461847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 10561847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 10661847f8eSopenharmony_ci * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. 10761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 10861847f8eSopenharmony_ci * @since 9 10961847f8eSopenharmony_ci */ 11061847f8eSopenharmony_ci /** 11161847f8eSopenharmony_ci * Unsubscribe location changed. 11261847f8eSopenharmony_ci * 11361847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 11461847f8eSopenharmony_ci * @param { 'locationChange' } type - Indicates the location service event to be subscribed to. 11561847f8eSopenharmony_ci * @param { Callback<Location> } [callback] - Indicates the callback for reporting the location result. 11661847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 11761847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 11861847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.off('locationChange')} due to limited device capabilities. 11961847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 12061847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 12161847f8eSopenharmony_ci * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. 12261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 12361847f8eSopenharmony_ci * @atomicservice 12461847f8eSopenharmony_ci * @since 11 12561847f8eSopenharmony_ci */ 12661847f8eSopenharmony_ci function off(type: 'locationChange', callback?: Callback<Location>): void; 12761847f8eSopenharmony_ci 12861847f8eSopenharmony_ci /** 12961847f8eSopenharmony_ci * Subscribe continuous location error changed. 13061847f8eSopenharmony_ci * 13161847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 13261847f8eSopenharmony_ci * @param { 'locationError' } type - Indicates the location service event to be subscribed to. 13361847f8eSopenharmony_ci * @param { Callback<LocationError> } callback - Indicates the callback for reporting the continuous location error. 13461847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 13561847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 13661847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.on('locationError')} due to limited device capabilities. 13761847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 13861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 13961847f8eSopenharmony_ci * @atomicservice 14061847f8eSopenharmony_ci * @since 12 14161847f8eSopenharmony_ci */ 14261847f8eSopenharmony_ci function on(type: 'locationError', callback: Callback<LocationError>): void; 14361847f8eSopenharmony_ci 14461847f8eSopenharmony_ci /** 14561847f8eSopenharmony_ci * Unsubscribe continuous location error changed. 14661847f8eSopenharmony_ci * 14761847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 14861847f8eSopenharmony_ci * @param { 'locationError' } type - Indicates the location service event to be subscribed to. 14961847f8eSopenharmony_ci * @param { Callback<LocationError> } [callback] - Indicates the callback for reporting the continuous location error. 15061847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 15161847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 15261847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.off('locationError')} due to limited device capabilities. 15361847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 15461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 15561847f8eSopenharmony_ci * @atomicservice 15661847f8eSopenharmony_ci * @since 12 15761847f8eSopenharmony_ci */ 15861847f8eSopenharmony_ci function off(type: 'locationError', callback?: Callback<LocationError>): void; 15961847f8eSopenharmony_ci 16061847f8eSopenharmony_ci /** 16161847f8eSopenharmony_ci * Subscribe location switch changed. 16261847f8eSopenharmony_ci * 16361847f8eSopenharmony_ci * @param { 'locationEnabledChange' } type - Indicates the location service event to be subscribed to. 16461847f8eSopenharmony_ci * @param { Callback<boolean> } callback - Indicates the callback for reporting the location switch status. 16561847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 16661847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.on('locationEnabledChange')} due to limited device capabilities. 16761847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 16861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 16961847f8eSopenharmony_ci * @since 9 17061847f8eSopenharmony_ci */ 17161847f8eSopenharmony_ci function on(type: 'locationEnabledChange', callback: Callback<boolean>): void; 17261847f8eSopenharmony_ci 17361847f8eSopenharmony_ci /** 17461847f8eSopenharmony_ci * Unsubscribe location switch changed. 17561847f8eSopenharmony_ci * 17661847f8eSopenharmony_ci * @param { 'locationEnabledChange' } type - Indicates the location service event to be subscribed to. 17761847f8eSopenharmony_ci * @param { Callback<boolean> } [callback] - Indicates the callback for reporting the location switch status. 17861847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 17961847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.off('locationEnabledChange')} due to limited device capabilities. 18061847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 18161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 18261847f8eSopenharmony_ci * @since 9 18361847f8eSopenharmony_ci */ 18461847f8eSopenharmony_ci function off(type: 'locationEnabledChange', callback?: Callback<boolean>): void; 18561847f8eSopenharmony_ci 18661847f8eSopenharmony_ci /** 18761847f8eSopenharmony_ci * Subscribe to cache GNSS locations update messages. 18861847f8eSopenharmony_ci * 18961847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 19061847f8eSopenharmony_ci * @param { 'cachedGnssLocationsChange' } type - Indicates the location service event to be subscribed to. 19161847f8eSopenharmony_ci * @param { CachedGnssLocationsRequest } request - Indicates the cached GNSS locations request parameters. 19261847f8eSopenharmony_ci * @param { Callback<Array<Location>> } callback - Indicates the callback for reporting the cached GNSS locations. 19361847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 19461847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 19561847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.on('cachedGnssLocationsChange')} due to limited device capabilities. 19661847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 19761847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 19861847f8eSopenharmony_ci * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. 19961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 20061847f8eSopenharmony_ci * @since 9 20161847f8eSopenharmony_ci */ 20261847f8eSopenharmony_ci function on(type: 'cachedGnssLocationsChange', request: CachedGnssLocationsRequest, callback: Callback<Array<Location>>): void; 20361847f8eSopenharmony_ci 20461847f8eSopenharmony_ci /** 20561847f8eSopenharmony_ci * Unsubscribe to cache GNSS locations update messages. 20661847f8eSopenharmony_ci * 20761847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 20861847f8eSopenharmony_ci * @param { 'cachedGnssLocationsChange' } type - Indicates the location service event to be subscribed to. 20961847f8eSopenharmony_ci * @param { Callback<Array<Location>> } [callback] - Indicates the callback for reporting the cached gnss locations. 21061847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 21161847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 21261847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.off('cachedGnssLocationsChange')} due to limited device capabilities. 21361847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 21461847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 21561847f8eSopenharmony_ci * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. 21661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 21761847f8eSopenharmony_ci * @since 9 21861847f8eSopenharmony_ci */ 21961847f8eSopenharmony_ci function off(type: 'cachedGnssLocationsChange', callback?: Callback<Array<Location>>): void; 22061847f8eSopenharmony_ci 22161847f8eSopenharmony_ci /** 22261847f8eSopenharmony_ci * Subscribe satellite status changed. 22361847f8eSopenharmony_ci * 22461847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 22561847f8eSopenharmony_ci * @param { 'satelliteStatusChange' } type - Indicates the location service event to be subscribed to. 22661847f8eSopenharmony_ci * @param { Callback<SatelliteStatusInfo> } callback - Indicates the callback for reporting the satellite status. 22761847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 22861847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 22961847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.on('satelliteStatusChange')} due to limited device capabilities. 23061847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 23161847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 23261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 23361847f8eSopenharmony_ci * @since 9 23461847f8eSopenharmony_ci */ 23561847f8eSopenharmony_ci function on(type: 'satelliteStatusChange', callback: Callback<SatelliteStatusInfo>): void; 23661847f8eSopenharmony_ci 23761847f8eSopenharmony_ci /** 23861847f8eSopenharmony_ci * Unsubscribe satellite status changed. 23961847f8eSopenharmony_ci * 24061847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 24161847f8eSopenharmony_ci * @param { 'satelliteStatusChange' } type - Indicates the location service event to be subscribed to. 24261847f8eSopenharmony_ci * @param { Callback<SatelliteStatusInfo> } [callback] - Indicates the callback for reporting the satellite status. 24361847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 24461847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 24561847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.off('satelliteStatusChange')} due to limited device capabilities. 24661847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 24761847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 24861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 24961847f8eSopenharmony_ci * @since 9 25061847f8eSopenharmony_ci */ 25161847f8eSopenharmony_ci function off(type: 'satelliteStatusChange', callback?: Callback<SatelliteStatusInfo>): void; 25261847f8eSopenharmony_ci 25361847f8eSopenharmony_ci /** 25461847f8eSopenharmony_ci * Subscribe nmea message changed. 25561847f8eSopenharmony_ci * 25661847f8eSopenharmony_ci * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION 25761847f8eSopenharmony_ci * @param { 'nmeaMessage' } type - Indicates the location service event to be subscribed to. 25861847f8eSopenharmony_ci * @param { Callback<string> } callback - Indicates the callback for reporting the nmea message. 25961847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 26061847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 26161847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.on('nmeaMessage')} due to limited device capabilities. 26261847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 26361847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 26461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 26561847f8eSopenharmony_ci * @since 9 26661847f8eSopenharmony_ci */ 26761847f8eSopenharmony_ci function on(type: 'nmeaMessage', callback: Callback<string>): void; 26861847f8eSopenharmony_ci 26961847f8eSopenharmony_ci /** 27061847f8eSopenharmony_ci * Unsubscribe nmea message changed. 27161847f8eSopenharmony_ci * 27261847f8eSopenharmony_ci * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION 27361847f8eSopenharmony_ci * @param { 'nmeaMessage' } type - Indicates the location service event to be subscribed to. 27461847f8eSopenharmony_ci * @param { Callback<string> } [callback] - Indicates the callback for reporting the nmea message. 27561847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 27661847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 27761847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.off('nmeaMessage')} due to limited device capabilities. 27861847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 27961847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 28061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 28161847f8eSopenharmony_ci * @since 9 28261847f8eSopenharmony_ci */ 28361847f8eSopenharmony_ci function off(type: 'nmeaMessage', callback?: Callback<string>): void; 28461847f8eSopenharmony_ci 28561847f8eSopenharmony_ci /** 28661847f8eSopenharmony_ci * Add a geofence and subscribe geofence status changed. 28761847f8eSopenharmony_ci * 28861847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 28961847f8eSopenharmony_ci * @param { 'gnssFenceStatusChange' } type - Indicates the location service event to be subscribed to. 29061847f8eSopenharmony_ci * @param { GeofenceRequest } request - Indicates the Geofence configuration parameters. 29161847f8eSopenharmony_ci * @param { WantAgent } want - Indicates which ability to start when the geofence event is triggered. 29261847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 29361847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 29461847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.on('gnssFenceStatusChange')} due to limited device capabilities. 29561847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 29661847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 29761847f8eSopenharmony_ci * @throws { BusinessError } 3301600 - Failed to operate the geofence. 29861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 29961847f8eSopenharmony_ci * @since 9 30061847f8eSopenharmony_ci */ 30161847f8eSopenharmony_ci function on(type: 'gnssFenceStatusChange', request: GeofenceRequest, want: WantAgent): void; 30261847f8eSopenharmony_ci 30361847f8eSopenharmony_ci /** 30461847f8eSopenharmony_ci * Remove a geofence and unsubscribe geofence status changed. 30561847f8eSopenharmony_ci * 30661847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 30761847f8eSopenharmony_ci * @param { 'gnssFenceStatusChange' } type - Indicates the location service event to be subscribed to. 30861847f8eSopenharmony_ci * @param { GeofenceRequest } request - Indicates the Geofence configuration parameters. 30961847f8eSopenharmony_ci * @param { WantAgent } want - Indicates which ability to start when the geofence event is triggered. 31061847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 31161847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 31261847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.off('gnssFenceStatusChange')} due to limited device capabilities. 31361847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 31461847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 31561847f8eSopenharmony_ci * @throws { BusinessError } 3301600 - Failed to operate the geofence. 31661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 31761847f8eSopenharmony_ci * @since 9 31861847f8eSopenharmony_ci */ 31961847f8eSopenharmony_ci function off(type: 'gnssFenceStatusChange', request: GeofenceRequest, want: WantAgent): void; 32061847f8eSopenharmony_ci 32161847f8eSopenharmony_ci /** 32261847f8eSopenharmony_ci * Registering the callback function for listening to country code changes. 32361847f8eSopenharmony_ci * 32461847f8eSopenharmony_ci * @param { 'countryCodeChange' } type - Indicates the location service event to be subscribed to. 32561847f8eSopenharmony_ci * @param { Callback<CountryCode> } callback - Indicates the callback for reporting country code changes. 32661847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 32761847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.on('countryCodeChange')} due to limited device capabilities. 32861847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 32961847f8eSopenharmony_ci * @throws { BusinessError } 3301500 - Failed to query the area information. 33061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 33161847f8eSopenharmony_ci * @since 9 33261847f8eSopenharmony_ci */ 33361847f8eSopenharmony_ci function on(type: 'countryCodeChange', callback: Callback<CountryCode>): void; 33461847f8eSopenharmony_ci 33561847f8eSopenharmony_ci /** 33661847f8eSopenharmony_ci * Unregistering the callback function for listening to country code changes. 33761847f8eSopenharmony_ci * 33861847f8eSopenharmony_ci * @param { 'countryCodeChange' } type - Indicates the location service event to be subscribed to. 33961847f8eSopenharmony_ci * @param { Callback<CountryCode> } [callback] - Indicates the callback for reporting country code changes. 34061847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 34161847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.off('countryCodeChange')} due to limited device capabilities. 34261847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 34361847f8eSopenharmony_ci * @throws { BusinessError } 3301500 - Failed to query the area information. 34461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 34561847f8eSopenharmony_ci * @since 9 34661847f8eSopenharmony_ci */ 34761847f8eSopenharmony_ci function off(type: 'countryCodeChange', callback?: Callback<CountryCode>): void; 34861847f8eSopenharmony_ci 34961847f8eSopenharmony_ci /** 35061847f8eSopenharmony_ci * Subscribe to changes in WiFi/BT scanning information, 35161847f8eSopenharmony_ci * and use the WiFi/BT scanning information for localization. 35261847f8eSopenharmony_ci * 35361847f8eSopenharmony_ci * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION 35461847f8eSopenharmony_ci * @param { 'locatingRequiredDataChange' } type - Indicates the location service event to be subscribed to. 35561847f8eSopenharmony_ci * @param { LocatingRequiredDataConfig } config - Indicates the locating required data configuration parameters. 35661847f8eSopenharmony_ci * @param { Callback<Array<LocatingRequiredData>> } [callback] - Indicates the callback for reporting WiFi/BT scan info. 35761847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 35861847f8eSopenharmony_ci * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. 35961847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 36061847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.on('locatingRequiredDataChange')} due to limited device capabilities. 36161847f8eSopenharmony_ci * @throws { BusinessError } 3301800 - Failed to start WiFi or Bluetooth scanning. 36261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 36361847f8eSopenharmony_ci * @systemapi 36461847f8eSopenharmony_ci * @since 10 36561847f8eSopenharmony_ci */ 36661847f8eSopenharmony_ci function on(type: 'locatingRequiredDataChange', config: LocatingRequiredDataConfig, callback: Callback<Array<LocatingRequiredData>>): void; 36761847f8eSopenharmony_ci 36861847f8eSopenharmony_ci /** 36961847f8eSopenharmony_ci * Stop WiFi/BT scanning and unsubscribe from WiFi/BT scanning information changes. 37061847f8eSopenharmony_ci * 37161847f8eSopenharmony_ci * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION 37261847f8eSopenharmony_ci * @param { 'locatingRequiredDataChange' } type - Indicates the location service event to be subscribed to. 37361847f8eSopenharmony_ci * @param { Callback<Array<LocatingRequiredData>> } [callback] - Indicates the callback for reporting WiFi/BT scan info. 37461847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 37561847f8eSopenharmony_ci * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. 37661847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 37761847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.off('locatingRequiredDataChange')} due to limited device capabilities. 37861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 37961847f8eSopenharmony_ci * @systemapi 38061847f8eSopenharmony_ci * @since 10 38161847f8eSopenharmony_ci */ 38261847f8eSopenharmony_ci function off(type: 'locatingRequiredDataChange', callback?: Callback<Array<LocatingRequiredData>>): void; 38361847f8eSopenharmony_ci 38461847f8eSopenharmony_ci /** 38561847f8eSopenharmony_ci * Subscribe location icon status changed. 38661847f8eSopenharmony_ci * 38761847f8eSopenharmony_ci * @param { 'locationIconStatusChange' } type - Indicates the location service event to be subscribed to. 38861847f8eSopenharmony_ci * @param { Callback<LocationIconStatus> } callback - Indicates the callback for reporting the location icon status. 38961847f8eSopenharmony_ci * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. 39061847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 39161847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.on('locationIconStatusChange')} due to limited device capabilities. 39261847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 39361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 39461847f8eSopenharmony_ci * @systemapi 39561847f8eSopenharmony_ci * @since 12 39661847f8eSopenharmony_ci */ 39761847f8eSopenharmony_ci function on(type: 'locationIconStatusChange', callback: Callback<LocationIconStatus>): void; 39861847f8eSopenharmony_ci 39961847f8eSopenharmony_ci /** 40061847f8eSopenharmony_ci * Unsubscribe location icon status changed. 40161847f8eSopenharmony_ci * 40261847f8eSopenharmony_ci * @param { 'locationIconStatusChange' } type - Indicates the location service event to be subscribed to. 40361847f8eSopenharmony_ci * @param { Callback<LocationIconStatus> } [callback] - Indicates the callback for reporting the location icon status. 40461847f8eSopenharmony_ci * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. 40561847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 40661847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.off('locationIconStatusChange')} due to limited device capabilities. 40761847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 40861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 40961847f8eSopenharmony_ci * @systemapi 41061847f8eSopenharmony_ci * @since 12 41161847f8eSopenharmony_ci */ 41261847f8eSopenharmony_ci function off(type: 'locationIconStatusChange', callback?: Callback<LocationIconStatus>): void; 41361847f8eSopenharmony_ci 41461847f8eSopenharmony_ci /** 41561847f8eSopenharmony_ci * Obtain current location. 41661847f8eSopenharmony_ci * 41761847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 41861847f8eSopenharmony_ci * @param { CurrentLocationRequest } request - Indicates the location request parameters. 41961847f8eSopenharmony_ci * @param { AsyncCallback<Location> } callback - Indicates the callback for reporting the location result. 42061847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 42161847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 42261847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getCurrentLocation} due to limited device capabilities. 42361847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 42461847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 42561847f8eSopenharmony_ci * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. 42661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 42761847f8eSopenharmony_ci * @since 9 42861847f8eSopenharmony_ci */ 42961847f8eSopenharmony_ci /** 43061847f8eSopenharmony_ci * Obtain current location. 43161847f8eSopenharmony_ci * 43261847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 43361847f8eSopenharmony_ci * @param { CurrentLocationRequest } request - Indicates the location request parameters. 43461847f8eSopenharmony_ci * @param { AsyncCallback<Location> } callback - Indicates the callback for reporting the location result. 43561847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 43661847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 43761847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getCurrentLocation} due to limited device capabilities. 43861847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 43961847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 44061847f8eSopenharmony_ci * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. 44161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 44261847f8eSopenharmony_ci * @atomicservice 44361847f8eSopenharmony_ci * @since 11 44461847f8eSopenharmony_ci */ 44561847f8eSopenharmony_ci /** 44661847f8eSopenharmony_ci * Obtain current location. 44761847f8eSopenharmony_ci * 44861847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 44961847f8eSopenharmony_ci * @param { CurrentLocationRequest | SingleLocationRequest } request - Indicates the location request parameters. 45061847f8eSopenharmony_ci * @param { AsyncCallback<Location> } callback - Indicates the callback for reporting the location result. 45161847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 45261847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 45361847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getCurrentLocation} due to limited device capabilities. 45461847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 45561847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 45661847f8eSopenharmony_ci * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. 45761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 45861847f8eSopenharmony_ci * @atomicservice 45961847f8eSopenharmony_ci * @since 12 46061847f8eSopenharmony_ci */ 46161847f8eSopenharmony_ci function getCurrentLocation(request: CurrentLocationRequest | SingleLocationRequest, 46261847f8eSopenharmony_ci callback: AsyncCallback<Location>): void; 46361847f8eSopenharmony_ci 46461847f8eSopenharmony_ci /** 46561847f8eSopenharmony_ci * Obtain current location. 46661847f8eSopenharmony_ci * 46761847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 46861847f8eSopenharmony_ci * @param { AsyncCallback<Location> } callback - Indicates the callback for reporting the location result. 46961847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 47061847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 47161847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getCurrentLocation} due to limited device capabilities. 47261847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 47361847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 47461847f8eSopenharmony_ci * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. 47561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 47661847f8eSopenharmony_ci * @since 9 47761847f8eSopenharmony_ci */ 47861847f8eSopenharmony_ci /** 47961847f8eSopenharmony_ci * Obtain current location. 48061847f8eSopenharmony_ci * 48161847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 48261847f8eSopenharmony_ci * @param { AsyncCallback<Location> } callback - Indicates the callback for reporting the location result. 48361847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 48461847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 48561847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getCurrentLocation} due to limited device capabilities. 48661847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 48761847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 48861847f8eSopenharmony_ci * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. 48961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 49061847f8eSopenharmony_ci * @atomicservice 49161847f8eSopenharmony_ci * @since 11 49261847f8eSopenharmony_ci */ 49361847f8eSopenharmony_ci function getCurrentLocation(callback: AsyncCallback<Location>): void; 49461847f8eSopenharmony_ci 49561847f8eSopenharmony_ci /** 49661847f8eSopenharmony_ci * Obtain current location. 49761847f8eSopenharmony_ci * 49861847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 49961847f8eSopenharmony_ci * @param { CurrentLocationRequest } [request] - Indicates the location request parameters. 50061847f8eSopenharmony_ci * @returns { Promise<Location> } The promise returned by the function. 50161847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 50261847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 50361847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getCurrentLocation} due to limited device capabilities. 50461847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 50561847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 50661847f8eSopenharmony_ci * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. 50761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 50861847f8eSopenharmony_ci * @since 9 50961847f8eSopenharmony_ci */ 51061847f8eSopenharmony_ci /** 51161847f8eSopenharmony_ci * Obtain current location. 51261847f8eSopenharmony_ci * 51361847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 51461847f8eSopenharmony_ci * @param { CurrentLocationRequest } [request] - Indicates the location request parameters. 51561847f8eSopenharmony_ci * @returns { Promise<Location> } The promise returned by the function. 51661847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 51761847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 51861847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getCurrentLocation} due to limited device capabilities. 51961847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 52061847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 52161847f8eSopenharmony_ci * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. 52261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 52361847f8eSopenharmony_ci * @atomicservice 52461847f8eSopenharmony_ci * @since 11 52561847f8eSopenharmony_ci */ 52661847f8eSopenharmony_ci /** 52761847f8eSopenharmony_ci * Obtain current location. 52861847f8eSopenharmony_ci * 52961847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 53061847f8eSopenharmony_ci * @param { CurrentLocationRequest | SingleLocationRequest } [request] - Indicates the location request parameters. 53161847f8eSopenharmony_ci * @returns { Promise<Location> } The promise returned by the function. 53261847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 53361847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 53461847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getCurrentLocation} due to limited device capabilities. 53561847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 53661847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 53761847f8eSopenharmony_ci * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. 53861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 53961847f8eSopenharmony_ci * @atomicservice 54061847f8eSopenharmony_ci * @since 12 54161847f8eSopenharmony_ci */ 54261847f8eSopenharmony_ci function getCurrentLocation(request?: CurrentLocationRequest | SingleLocationRequest): 54361847f8eSopenharmony_ci Promise<Location>; 54461847f8eSopenharmony_ci 54561847f8eSopenharmony_ci /** 54661847f8eSopenharmony_ci * Obtain last known location. 54761847f8eSopenharmony_ci * 54861847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 54961847f8eSopenharmony_ci * @returns { Location } The last known location information. 55061847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 55161847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getLastLocation} due to limited device capabilities. 55261847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 55361847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 55461847f8eSopenharmony_ci * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. 55561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 55661847f8eSopenharmony_ci * @since 9 55761847f8eSopenharmony_ci */ 55861847f8eSopenharmony_ci /** 55961847f8eSopenharmony_ci * Obtain last known location. 56061847f8eSopenharmony_ci * 56161847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 56261847f8eSopenharmony_ci * @returns { Location } The last known location information. 56361847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 56461847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getLastLocation} due to limited device capabilities. 56561847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 56661847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 56761847f8eSopenharmony_ci * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. 56861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 56961847f8eSopenharmony_ci * @atomicservice 57061847f8eSopenharmony_ci * @since 11 57161847f8eSopenharmony_ci */ 57261847f8eSopenharmony_ci function getLastLocation(): Location; 57361847f8eSopenharmony_ci 57461847f8eSopenharmony_ci /** 57561847f8eSopenharmony_ci * Obtain current location switch status. 57661847f8eSopenharmony_ci * 57761847f8eSopenharmony_ci * @returns { boolean } Returns {@code true} if the location switch on, returns {@code false} otherwise. 57861847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.isLocationEnabled} due to limited device capabilities. 57961847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 58061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 58161847f8eSopenharmony_ci * @since 9 58261847f8eSopenharmony_ci */ 58361847f8eSopenharmony_ci /** 58461847f8eSopenharmony_ci * Obtain current location switch status. 58561847f8eSopenharmony_ci * 58661847f8eSopenharmony_ci * @returns { boolean } Returns {@code true} if the location switch on, returns {@code false} otherwise. 58761847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.isLocationEnabled} due to limited device capabilities. 58861847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 58961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 59061847f8eSopenharmony_ci * @atomicservice 59161847f8eSopenharmony_ci * @since 11 59261847f8eSopenharmony_ci */ 59361847f8eSopenharmony_ci function isLocationEnabled(): boolean; 59461847f8eSopenharmony_ci 59561847f8eSopenharmony_ci /** 59661847f8eSopenharmony_ci * Enable location switch. 59761847f8eSopenharmony_ci * 59861847f8eSopenharmony_ci * @permission ohos.permission.MANAGE_SECURE_SETTINGS 59961847f8eSopenharmony_ci * @param { AsyncCallback<void> } callback - Indicates the callback for reporting the error message. 60061847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 60161847f8eSopenharmony_ci * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. 60261847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 60361847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.enableLocation} due to limited device capabilities. 60461847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 60561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 60661847f8eSopenharmony_ci * @systemapi 60761847f8eSopenharmony_ci * @since 9 60861847f8eSopenharmony_ci */ 60961847f8eSopenharmony_ci function enableLocation(callback: AsyncCallback<void>): void; 61061847f8eSopenharmony_ci 61161847f8eSopenharmony_ci /** 61261847f8eSopenharmony_ci * Enable location switch. 61361847f8eSopenharmony_ci * 61461847f8eSopenharmony_ci * @permission ohos.permission.MANAGE_SECURE_SETTINGS 61561847f8eSopenharmony_ci * @returns { Promise<void> } The promise returned by the function. 61661847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 61761847f8eSopenharmony_ci * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. 61861847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.enableLocation} due to limited device capabilities. 61961847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 62061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 62161847f8eSopenharmony_ci * @systemapi 62261847f8eSopenharmony_ci * @since 9 62361847f8eSopenharmony_ci */ 62461847f8eSopenharmony_ci function enableLocation(): Promise<void>; 62561847f8eSopenharmony_ci 62661847f8eSopenharmony_ci /** 62761847f8eSopenharmony_ci * Disable location switch. 62861847f8eSopenharmony_ci * 62961847f8eSopenharmony_ci * @permission ohos.permission.MANAGE_SECURE_SETTINGS 63061847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 63161847f8eSopenharmony_ci * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. 63261847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.disableLocation} due to limited device capabilities. 63361847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 63461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 63561847f8eSopenharmony_ci * @systemapi 63661847f8eSopenharmony_ci * @since 9 63761847f8eSopenharmony_ci */ 63861847f8eSopenharmony_ci function disableLocation(): void; 63961847f8eSopenharmony_ci 64061847f8eSopenharmony_ci /** 64161847f8eSopenharmony_ci * Obtain address info from location. 64261847f8eSopenharmony_ci * 64361847f8eSopenharmony_ci * @param { ReverseGeoCodeRequest } request - Indicates the reverse geocode query parameters. 64461847f8eSopenharmony_ci * @param { AsyncCallback<Array<GeoAddress>> } callback - Indicates the callback for reporting the address info. 64561847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 64661847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getAddressesFromLocation} due to limited device capabilities. 64761847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 64861847f8eSopenharmony_ci * @throws { BusinessError } 3301300 - Reverse geocoding query failed. 64961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 65061847f8eSopenharmony_ci * @since 9 65161847f8eSopenharmony_ci */ 65261847f8eSopenharmony_ci function getAddressesFromLocation(request: ReverseGeoCodeRequest, callback: AsyncCallback<Array<GeoAddress>>): void; 65361847f8eSopenharmony_ci 65461847f8eSopenharmony_ci /** 65561847f8eSopenharmony_ci * Obtain address info from location. 65661847f8eSopenharmony_ci * 65761847f8eSopenharmony_ci * @param { ReverseGeoCodeRequest } request - Indicates the reverse geocode query parameters. 65861847f8eSopenharmony_ci * @returns { Promise<Array<GeoAddress>> } The promise returned by the function. 65961847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 66061847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getAddressesFromLocation} due to limited device capabilities. 66161847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 66261847f8eSopenharmony_ci * @throws { BusinessError } 3301300 - Reverse geocoding query failed. 66361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 66461847f8eSopenharmony_ci * @since 9 66561847f8eSopenharmony_ci */ 66661847f8eSopenharmony_ci function getAddressesFromLocation(request: ReverseGeoCodeRequest): Promise<Array<GeoAddress>>; 66761847f8eSopenharmony_ci 66861847f8eSopenharmony_ci /** 66961847f8eSopenharmony_ci * Obtain latitude and longitude info from location address. 67061847f8eSopenharmony_ci * 67161847f8eSopenharmony_ci * @param { GeoCodeRequest } request - Indicates the geocode query parameters. 67261847f8eSopenharmony_ci * @param { AsyncCallback<Array<GeoAddress>> } callback - Indicates the callback for reporting the latitude and longitude result. 67361847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 67461847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getAddressesFromLocationName} due to limited device capabilities. 67561847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 67661847f8eSopenharmony_ci * @throws { BusinessError } 3301400 - Geocoding query failed. 67761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 67861847f8eSopenharmony_ci * @since 9 67961847f8eSopenharmony_ci */ 68061847f8eSopenharmony_ci function getAddressesFromLocationName(request: GeoCodeRequest, callback: AsyncCallback<Array<GeoAddress>>): void; 68161847f8eSopenharmony_ci 68261847f8eSopenharmony_ci /** 68361847f8eSopenharmony_ci * Obtain latitude and longitude info from location address. 68461847f8eSopenharmony_ci * 68561847f8eSopenharmony_ci * @param { GeoCodeRequest } request - Indicates the geocode query parameters. 68661847f8eSopenharmony_ci * @returns { Promise<Array<GeoAddress>> } The promise returned by the function. 68761847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 68861847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getAddressesFromLocationName} due to limited device capabilities. 68961847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 69061847f8eSopenharmony_ci * @throws { BusinessError } 3301400 - Geocoding query failed. 69161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 69261847f8eSopenharmony_ci * @since 9 69361847f8eSopenharmony_ci */ 69461847f8eSopenharmony_ci function getAddressesFromLocationName(request: GeoCodeRequest): Promise<Array<GeoAddress>>; 69561847f8eSopenharmony_ci 69661847f8eSopenharmony_ci /** 69761847f8eSopenharmony_ci * Obtain geocoding service status. 69861847f8eSopenharmony_ci * 69961847f8eSopenharmony_ci * @returns { boolean } Returns {@code true} if geocoding service is available, returns {@code false} otherwise. 70061847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.isGeocoderAvailable} due to limited device capabilities. 70161847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 70261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 70361847f8eSopenharmony_ci * @since 9 70461847f8eSopenharmony_ci */ 70561847f8eSopenharmony_ci function isGeocoderAvailable(): boolean; 70661847f8eSopenharmony_ci 70761847f8eSopenharmony_ci /** 70861847f8eSopenharmony_ci * Obtain the number of cached GNSS locations reported at a time. 70961847f8eSopenharmony_ci * 71061847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 71161847f8eSopenharmony_ci * @param { AsyncCallback<number> } callback - Indicates the callback for reporting the cached GNSS locations size. 71261847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 71361847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 71461847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getCachedGnssLocationsSize} due to limited device capabilities. 71561847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 71661847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 71761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 71861847f8eSopenharmony_ci * @since 9 71961847f8eSopenharmony_ci */ 72061847f8eSopenharmony_ci function getCachedGnssLocationsSize(callback: AsyncCallback<number>): void; 72161847f8eSopenharmony_ci 72261847f8eSopenharmony_ci /** 72361847f8eSopenharmony_ci * Obtain the number of cached GNSS locations. 72461847f8eSopenharmony_ci * 72561847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 72661847f8eSopenharmony_ci * @returns { Promise<number> } The promise returned by the function. 72761847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 72861847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getCachedGnssLocationsSize} due to limited device capabilities. 72961847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 73061847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 73161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 73261847f8eSopenharmony_ci * @since 9 73361847f8eSopenharmony_ci */ 73461847f8eSopenharmony_ci function getCachedGnssLocationsSize(): Promise<number>; 73561847f8eSopenharmony_ci 73661847f8eSopenharmony_ci /** 73761847f8eSopenharmony_ci * All prepared GNSS locations are returned to the application through the callback function, 73861847f8eSopenharmony_ci * and the bottom-layer buffer is cleared. 73961847f8eSopenharmony_ci * 74061847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 74161847f8eSopenharmony_ci * @param { AsyncCallback<void> } callback - Indicates the callback for reporting the error message. 74261847f8eSopenharmony_ci * If the function fails to execute, the error message will be carried in the first parameter err of AsyncCallback, 74361847f8eSopenharmony_ci * If the function executes successfully, execute the callback function only, no data will be returned. 74461847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 74561847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 74661847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.flushCachedGnssLocations} due to limited device capabilities. 74761847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 74861847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 74961847f8eSopenharmony_ci * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. 75061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 75161847f8eSopenharmony_ci * @since 9 75261847f8eSopenharmony_ci */ 75361847f8eSopenharmony_ci function flushCachedGnssLocations(callback: AsyncCallback<void>): void; 75461847f8eSopenharmony_ci 75561847f8eSopenharmony_ci /** 75661847f8eSopenharmony_ci * All prepared GNSS locations are returned to the application, 75761847f8eSopenharmony_ci * and the bottom-layer buffer is cleared. 75861847f8eSopenharmony_ci * 75961847f8eSopenharmony_ci * @permission ohos.permission.APPROXIMATELY_LOCATION 76061847f8eSopenharmony_ci * @returns { Promise<void> } The promise returned by the function. 76161847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 76261847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.flushCachedGnssLocations} due to limited device capabilities. 76361847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 76461847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 76561847f8eSopenharmony_ci * @throws { BusinessError } 3301200 - Failed to obtain the geographical location. 76661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 76761847f8eSopenharmony_ci * @since 9 76861847f8eSopenharmony_ci */ 76961847f8eSopenharmony_ci function flushCachedGnssLocations(): Promise<void>; 77061847f8eSopenharmony_ci 77161847f8eSopenharmony_ci /** 77261847f8eSopenharmony_ci * Send extended commands to location subsystem. 77361847f8eSopenharmony_ci * 77461847f8eSopenharmony_ci * @param { LocationCommand } command - Indicates the extended command message body. 77561847f8eSopenharmony_ci * @param { AsyncCallback<void> } callback - Indicates the callback for reporting the error message. 77661847f8eSopenharmony_ci * If the function fails to execute, the error message will be carried in the first parameter err of AsyncCallback, 77761847f8eSopenharmony_ci * If the function executes successfully, execute the callback function only, no data will be returned. 77861847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 77961847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.sendCommand} due to limited device capabilities. 78061847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 78161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 78261847f8eSopenharmony_ci * @since 9 78361847f8eSopenharmony_ci */ 78461847f8eSopenharmony_ci function sendCommand(command: LocationCommand, callback: AsyncCallback<void>): void; 78561847f8eSopenharmony_ci 78661847f8eSopenharmony_ci /** 78761847f8eSopenharmony_ci * Send extended commands to location subsystem. 78861847f8eSopenharmony_ci * 78961847f8eSopenharmony_ci * @param { LocationCommand } command - Indicates the extended command message body. 79061847f8eSopenharmony_ci * @returns { Promise<void> } The promise returned by the function. 79161847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 79261847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.sendCommand} due to limited device capabilities. 79361847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 79461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 79561847f8eSopenharmony_ci * @since 9 79661847f8eSopenharmony_ci */ 79761847f8eSopenharmony_ci function sendCommand(command: LocationCommand): Promise<void>; 79861847f8eSopenharmony_ci 79961847f8eSopenharmony_ci /** 80061847f8eSopenharmony_ci * Obtain the current country code. 80161847f8eSopenharmony_ci * 80261847f8eSopenharmony_ci * @param { AsyncCallback<CountryCode> } callback - Indicates the callback for reporting the country code. 80361847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 80461847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getCountryCode} due to limited device capabilities. 80561847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 80661847f8eSopenharmony_ci * @throws { BusinessError } 3301500 - Failed to query the area information. 80761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 80861847f8eSopenharmony_ci * @since 9 80961847f8eSopenharmony_ci */ 81061847f8eSopenharmony_ci function getCountryCode(callback: AsyncCallback<CountryCode>): void; 81161847f8eSopenharmony_ci 81261847f8eSopenharmony_ci /** 81361847f8eSopenharmony_ci * Obtain the current country code. 81461847f8eSopenharmony_ci * 81561847f8eSopenharmony_ci * @returns { Promise<CountryCode> } The promise returned by the function. 81661847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getCountryCode} due to limited device capabilities. 81761847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 81861847f8eSopenharmony_ci * @throws { BusinessError } 3301500 - Failed to query the area information. 81961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 82061847f8eSopenharmony_ci * @since 9 82161847f8eSopenharmony_ci */ 82261847f8eSopenharmony_ci function getCountryCode(): Promise<CountryCode>; 82361847f8eSopenharmony_ci 82461847f8eSopenharmony_ci /** 82561847f8eSopenharmony_ci * Enable the geographical location simulation function. 82661847f8eSopenharmony_ci * 82761847f8eSopenharmony_ci * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. 82861847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.enableLocationMock} due to limited device capabilities. 82961847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 83061847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 83161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 83261847f8eSopenharmony_ci * @systemapi 83361847f8eSopenharmony_ci * @since 9 83461847f8eSopenharmony_ci */ 83561847f8eSopenharmony_ci function enableLocationMock(): void; 83661847f8eSopenharmony_ci 83761847f8eSopenharmony_ci /** 83861847f8eSopenharmony_ci * Disable the geographical location simulation function. 83961847f8eSopenharmony_ci * 84061847f8eSopenharmony_ci * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. 84161847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.disableLocationMock} due to limited device capabilities. 84261847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 84361847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 84461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 84561847f8eSopenharmony_ci * @systemapi 84661847f8eSopenharmony_ci * @since 9 84761847f8eSopenharmony_ci */ 84861847f8eSopenharmony_ci function disableLocationMock(): void; 84961847f8eSopenharmony_ci 85061847f8eSopenharmony_ci /** 85161847f8eSopenharmony_ci * Set the configuration parameters for location simulation. 85261847f8eSopenharmony_ci * 85361847f8eSopenharmony_ci * @param { LocationMockConfig } config - Indicates the configuration parameters for location simulation. 85461847f8eSopenharmony_ci * Contains the array of locations and reporting intervals that need to be simulated. 85561847f8eSopenharmony_ci * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. 85661847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 85761847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.setMockedLocations} due to limited device capabilities. 85861847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 85961847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 86061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 86161847f8eSopenharmony_ci * @systemapi 86261847f8eSopenharmony_ci * @since 9 86361847f8eSopenharmony_ci */ 86461847f8eSopenharmony_ci function setMockedLocations(config: LocationMockConfig): void; 86561847f8eSopenharmony_ci 86661847f8eSopenharmony_ci /** 86761847f8eSopenharmony_ci * Enable the reverse geocoding simulation function. 86861847f8eSopenharmony_ci * 86961847f8eSopenharmony_ci * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. 87061847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.enableReverseGeocodingMock} due to limited device capabilities. 87161847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 87261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 87361847f8eSopenharmony_ci * @systemapi 87461847f8eSopenharmony_ci * @since 9 87561847f8eSopenharmony_ci */ 87661847f8eSopenharmony_ci function enableReverseGeocodingMock(): void; 87761847f8eSopenharmony_ci 87861847f8eSopenharmony_ci /** 87961847f8eSopenharmony_ci * Disable the reverse geocoding simulation function. 88061847f8eSopenharmony_ci * 88161847f8eSopenharmony_ci * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. 88261847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.disableReverseGeocodingMock} due to limited device capabilities. 88361847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 88461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 88561847f8eSopenharmony_ci * @systemapi 88661847f8eSopenharmony_ci * @since 9 88761847f8eSopenharmony_ci */ 88861847f8eSopenharmony_ci function disableReverseGeocodingMock(): void; 88961847f8eSopenharmony_ci 89061847f8eSopenharmony_ci /** 89161847f8eSopenharmony_ci * Set the configuration parameters for simulating reverse geocoding. 89261847f8eSopenharmony_ci * 89361847f8eSopenharmony_ci * @param { Array<ReverseGeocodingMockInfo> } mockInfos - Indicates the set of locations and place names to be simulated. 89461847f8eSopenharmony_ci * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. 89561847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 89661847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.setReverseGeocodingMockInfo} due to limited device capabilities. 89761847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 89861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 89961847f8eSopenharmony_ci * @systemapi 90061847f8eSopenharmony_ci * @since 9 90161847f8eSopenharmony_ci */ 90261847f8eSopenharmony_ci function setReverseGeocodingMockInfo(mockInfos: Array<ReverseGeocodingMockInfo>): void; 90361847f8eSopenharmony_ci 90461847f8eSopenharmony_ci /** 90561847f8eSopenharmony_ci * Querying location privacy protocol confirmation status. 90661847f8eSopenharmony_ci * 90761847f8eSopenharmony_ci * @param { LocationPrivacyType } type - Indicates location privacy protocol type. 90861847f8eSopenharmony_ci * @returns { boolean } Returns {@code true} if the location privacy protocol has been confirmed, returns {@code false} otherwise. 90961847f8eSopenharmony_ci * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. 91061847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 91161847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.isLocationPrivacyConfirmed} due to limited device capabilities. 91261847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 91361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 91461847f8eSopenharmony_ci * @systemapi 91561847f8eSopenharmony_ci * @since 9 91661847f8eSopenharmony_ci */ 91761847f8eSopenharmony_ci function isLocationPrivacyConfirmed(type: LocationPrivacyType): boolean; 91861847f8eSopenharmony_ci 91961847f8eSopenharmony_ci /** 92061847f8eSopenharmony_ci * Set location privacy protocol confirmation status. 92161847f8eSopenharmony_ci * 92261847f8eSopenharmony_ci * @permission ohos.permission.MANAGE_SECURE_SETTINGS 92361847f8eSopenharmony_ci * @param { LocationPrivacyType } type - Indicates location privacy protocol type. 92461847f8eSopenharmony_ci * @param { boolean } isConfirmed - Indicates whether the location privacy protocol has been confirmed. 92561847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 92661847f8eSopenharmony_ci * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. 92761847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 92861847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.setLocationPrivacyConfirmStatus} due to limited device capabilities. 92961847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 93061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 93161847f8eSopenharmony_ci * @systemapi 93261847f8eSopenharmony_ci * @since 9 93361847f8eSopenharmony_ci */ 93461847f8eSopenharmony_ci function setLocationPrivacyConfirmStatus(type: LocationPrivacyType, isConfirmed: boolean): void; 93561847f8eSopenharmony_ci 93661847f8eSopenharmony_ci /** 93761847f8eSopenharmony_ci * Get WiFi/BT scanning information, and use the WiFi/BT scanning information for localization. 93861847f8eSopenharmony_ci * 93961847f8eSopenharmony_ci * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION 94061847f8eSopenharmony_ci * @param { LocatingRequiredDataConfig } config - Indicates the request parameters for obtaining the data required for locating. 94161847f8eSopenharmony_ci * @returns { Promise<Array<LocatingRequiredData>> } The promise returned by the function, for reporting WiFi/BT scan info. 94261847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 94361847f8eSopenharmony_ci * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. 94461847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 94561847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getLocatingRequiredData} due to limited device capabilities. 94661847f8eSopenharmony_ci * @throws { BusinessError } 3301800 - Failed to start WiFi or Bluetooth scanning. 94761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 94861847f8eSopenharmony_ci * @systemapi 94961847f8eSopenharmony_ci * @since 10 95061847f8eSopenharmony_ci */ 95161847f8eSopenharmony_ci function getLocatingRequiredData(config: LocatingRequiredDataConfig): Promise<Array<LocatingRequiredData>>; 95261847f8eSopenharmony_ci 95361847f8eSopenharmony_ci /** 95461847f8eSopenharmony_ci * Add a geofence. 95561847f8eSopenharmony_ci * 95661847f8eSopenharmony_ci * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION 95761847f8eSopenharmony_ci * @param { GnssGeofenceRequest } fenceRequest - Indicates the Geofence configuration parameters. 95861847f8eSopenharmony_ci * @returns { Promise<number> } The promise returned by the function, for reporting the ID of geofence. 95961847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 96061847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 96161847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.addGnssGeofence} due to limited device capabilities. 96261847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 96361847f8eSopenharmony_ci * @throws { BusinessError } 3301100 - The location switch is off. 96461847f8eSopenharmony_ci * @throws { BusinessError } 3301601 - The number of geofences exceeds the maximum. 96561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 96661847f8eSopenharmony_ci * @since 12 96761847f8eSopenharmony_ci */ 96861847f8eSopenharmony_ci function addGnssGeofence(fenceRequest: GnssGeofenceRequest): Promise<number>; 96961847f8eSopenharmony_ci 97061847f8eSopenharmony_ci /** 97161847f8eSopenharmony_ci * Remove a geofence. 97261847f8eSopenharmony_ci * 97361847f8eSopenharmony_ci * @permission ohos.permission.LOCATION and ohos.permission.APPROXIMATELY_LOCATION 97461847f8eSopenharmony_ci * @param { number } geofenceId - Indicates the ID of geofence. 97561847f8eSopenharmony_ci * @returns { Promise<void> } The promise returned by the function. 97661847f8eSopenharmony_ci * @throws { BusinessError } 201 - Permission verification failed. The application does not have the permission required to call the API. 97761847f8eSopenharmony_ci * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types; 3. Parameter verification failed. 97861847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.removeGnssGeofence} due to limited device capabilities. 97961847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 98061847f8eSopenharmony_ci * @throws { BusinessError } 3301602 - Failed to delete a geofence due to an incorrect ID. 98161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 98261847f8eSopenharmony_ci * @since 12 98361847f8eSopenharmony_ci */ 98461847f8eSopenharmony_ci function removeGnssGeofence(geofenceId: number): Promise<void>; 98561847f8eSopenharmony_ci 98661847f8eSopenharmony_ci /** 98761847f8eSopenharmony_ci * Obtains the coordinate system types supported by geofence. 98861847f8eSopenharmony_ci * 98961847f8eSopenharmony_ci * @returns { Array<CoordinateSystemType> } Return the coordinate system types supported by geofence. 99061847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getGeofenceSupportedCoordTypes} due to limited device capabilities. 99161847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 99261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 99361847f8eSopenharmony_ci * @since 12 99461847f8eSopenharmony_ci */ 99561847f8eSopenharmony_ci function getGeofenceSupportedCoordTypes(): Array<CoordinateSystemType>; 99661847f8eSopenharmony_ci 99761847f8eSopenharmony_ci /** 99861847f8eSopenharmony_ci * Get location icon status. 99961847f8eSopenharmony_ci * 100061847f8eSopenharmony_ci * @returns { LocationIconStatus } The location icon status. 100161847f8eSopenharmony_ci * @throws { BusinessError } 202 - Permission verification failed. A non-system application calls a system API. 100261847f8eSopenharmony_ci * @throws { BusinessError } 801 - Capability not supported. Failed to call ${geoLocationManager.getLocationIconStatus} due to limited device capabilities. 100361847f8eSopenharmony_ci * @throws { BusinessError } 3301000 - The location service is unavailable. 100461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 100561847f8eSopenharmony_ci * @systemapi 100661847f8eSopenharmony_ci * @since 12 100761847f8eSopenharmony_ci */ 100861847f8eSopenharmony_ci function getLocationIconStatus(): LocationIconStatus; 100961847f8eSopenharmony_ci 101061847f8eSopenharmony_ci /** 101161847f8eSopenharmony_ci * Configuration parameters for simulating reverse geocoding. 101261847f8eSopenharmony_ci * 101361847f8eSopenharmony_ci * @typedef ReverseGeocodingMockInfo 101461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 101561847f8eSopenharmony_ci * @systemapi 101661847f8eSopenharmony_ci * @since 9 101761847f8eSopenharmony_ci */ 101861847f8eSopenharmony_ci export interface ReverseGeocodingMockInfo { 101961847f8eSopenharmony_ci /** 102061847f8eSopenharmony_ci * Location for which reverse geocoding query is required. 102161847f8eSopenharmony_ci * 102261847f8eSopenharmony_ci * @type { ReverseGeoCodeRequest } 102361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 102461847f8eSopenharmony_ci * @systemapi 102561847f8eSopenharmony_ci * @since 9 102661847f8eSopenharmony_ci */ 102761847f8eSopenharmony_ci location: ReverseGeoCodeRequest; 102861847f8eSopenharmony_ci 102961847f8eSopenharmony_ci /** 103061847f8eSopenharmony_ci * Actual address information corresponding to the location. 103161847f8eSopenharmony_ci * 103261847f8eSopenharmony_ci * @type { GeoAddress } 103361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 103461847f8eSopenharmony_ci * @systemapi 103561847f8eSopenharmony_ci * @since 9 103661847f8eSopenharmony_ci */ 103761847f8eSopenharmony_ci geoAddress: GeoAddress; 103861847f8eSopenharmony_ci } 103961847f8eSopenharmony_ci 104061847f8eSopenharmony_ci /** 104161847f8eSopenharmony_ci * Parameters for configuring the location simulation function. 104261847f8eSopenharmony_ci * 104361847f8eSopenharmony_ci * @typedef LocationMockConfig 104461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 104561847f8eSopenharmony_ci * @systemapi 104661847f8eSopenharmony_ci * @since 9 104761847f8eSopenharmony_ci */ 104861847f8eSopenharmony_ci export interface LocationMockConfig { 104961847f8eSopenharmony_ci /** 105061847f8eSopenharmony_ci * Interval for reporting simulated locations. 105161847f8eSopenharmony_ci * 105261847f8eSopenharmony_ci * @type { number } 105361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 105461847f8eSopenharmony_ci * @systemapi 105561847f8eSopenharmony_ci * @since 9 105661847f8eSopenharmony_ci */ 105761847f8eSopenharmony_ci timeInterval: number; 105861847f8eSopenharmony_ci 105961847f8eSopenharmony_ci /** 106061847f8eSopenharmony_ci * Mock location array. 106161847f8eSopenharmony_ci * 106261847f8eSopenharmony_ci * @type { Array<Location> } 106361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 106461847f8eSopenharmony_ci * @systemapi 106561847f8eSopenharmony_ci * @since 9 106661847f8eSopenharmony_ci */ 106761847f8eSopenharmony_ci locations: Array<Location>; 106861847f8eSopenharmony_ci } 106961847f8eSopenharmony_ci 107061847f8eSopenharmony_ci /** 107161847f8eSopenharmony_ci * Satellite status information. 107261847f8eSopenharmony_ci * 107361847f8eSopenharmony_ci * @typedef SatelliteStatusInfo 107461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 107561847f8eSopenharmony_ci * @since 9 107661847f8eSopenharmony_ci */ 107761847f8eSopenharmony_ci export interface SatelliteStatusInfo { 107861847f8eSopenharmony_ci /** 107961847f8eSopenharmony_ci * Number of satellites. 108061847f8eSopenharmony_ci * 108161847f8eSopenharmony_ci * @type { number } 108261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 108361847f8eSopenharmony_ci * @since 9 108461847f8eSopenharmony_ci */ 108561847f8eSopenharmony_ci satellitesNumber: number; 108661847f8eSopenharmony_ci 108761847f8eSopenharmony_ci /** 108861847f8eSopenharmony_ci * Satellite ID array. 108961847f8eSopenharmony_ci * 109061847f8eSopenharmony_ci * @type { Array<number> } 109161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 109261847f8eSopenharmony_ci * @since 9 109361847f8eSopenharmony_ci */ 109461847f8eSopenharmony_ci satelliteIds: Array<number>; 109561847f8eSopenharmony_ci 109661847f8eSopenharmony_ci /** 109761847f8eSopenharmony_ci * Carrier to noise density array. 109861847f8eSopenharmony_ci * 109961847f8eSopenharmony_ci * @type { Array<number> } 110061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 110161847f8eSopenharmony_ci * @since 9 110261847f8eSopenharmony_ci */ 110361847f8eSopenharmony_ci carrierToNoiseDensitys: Array<number>; 110461847f8eSopenharmony_ci 110561847f8eSopenharmony_ci /** 110661847f8eSopenharmony_ci * Satellite altitude array. 110761847f8eSopenharmony_ci * 110861847f8eSopenharmony_ci * @type { Array<number> } 110961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 111061847f8eSopenharmony_ci * @since 9 111161847f8eSopenharmony_ci */ 111261847f8eSopenharmony_ci altitudes: Array<number>; 111361847f8eSopenharmony_ci 111461847f8eSopenharmony_ci /** 111561847f8eSopenharmony_ci * Satellite azimuth array. 111661847f8eSopenharmony_ci * 111761847f8eSopenharmony_ci * @type { Array<number> } 111861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 111961847f8eSopenharmony_ci * @since 9 112061847f8eSopenharmony_ci */ 112161847f8eSopenharmony_ci azimuths: Array<number>; 112261847f8eSopenharmony_ci 112361847f8eSopenharmony_ci /** 112461847f8eSopenharmony_ci * Satellite carrier frequency array. 112561847f8eSopenharmony_ci * 112661847f8eSopenharmony_ci * @type { Array<number> } 112761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 112861847f8eSopenharmony_ci * @since 9 112961847f8eSopenharmony_ci */ 113061847f8eSopenharmony_ci carrierFrequencies: Array<number>; 113161847f8eSopenharmony_ci 113261847f8eSopenharmony_ci /** 113361847f8eSopenharmony_ci * Satellite constellation type array. 113461847f8eSopenharmony_ci * 113561847f8eSopenharmony_ci * @type { ?Array<SatelliteConstellationCategory> } 113661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 113761847f8eSopenharmony_ci * @since 12 113861847f8eSopenharmony_ci */ 113961847f8eSopenharmony_ci satelliteConstellation?: Array<SatelliteConstellationCategory>; 114061847f8eSopenharmony_ci 114161847f8eSopenharmony_ci /** 114261847f8eSopenharmony_ci * Satellite additional information array. 114361847f8eSopenharmony_ci * 114461847f8eSopenharmony_ci * @type { ?Array<number> } 114561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 114661847f8eSopenharmony_ci * @since 12 114761847f8eSopenharmony_ci */ 114861847f8eSopenharmony_ci satelliteAdditionalInfo?: Array<number>; 114961847f8eSopenharmony_ci } 115061847f8eSopenharmony_ci 115161847f8eSopenharmony_ci /** 115261847f8eSopenharmony_ci * Parameters for requesting to report cache location information. 115361847f8eSopenharmony_ci * 115461847f8eSopenharmony_ci * @typedef CachedGnssLocationsRequest 115561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 115661847f8eSopenharmony_ci * @since 9 115761847f8eSopenharmony_ci */ 115861847f8eSopenharmony_ci export interface CachedGnssLocationsRequest { 115961847f8eSopenharmony_ci /** 116061847f8eSopenharmony_ci * GNSS cache location report period. 116161847f8eSopenharmony_ci * 116261847f8eSopenharmony_ci * @type { number } 116361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 116461847f8eSopenharmony_ci * @since 9 116561847f8eSopenharmony_ci */ 116661847f8eSopenharmony_ci reportingPeriodSec: number; 116761847f8eSopenharmony_ci 116861847f8eSopenharmony_ci /** 116961847f8eSopenharmony_ci * Indicates whether to wake up the listener when the GNSS cache location queue is full. 117061847f8eSopenharmony_ci * 117161847f8eSopenharmony_ci * @type { boolean } 117261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 117361847f8eSopenharmony_ci * @since 9 117461847f8eSopenharmony_ci */ 117561847f8eSopenharmony_ci wakeUpCacheQueueFull: boolean; 117661847f8eSopenharmony_ci } 117761847f8eSopenharmony_ci 117861847f8eSopenharmony_ci /** 117961847f8eSopenharmony_ci * Configuring parameters in GNSS geofence requests. 118061847f8eSopenharmony_ci * 118161847f8eSopenharmony_ci * @typedef GnssGeofenceRequest 118261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 118361847f8eSopenharmony_ci * @since 12 118461847f8eSopenharmony_ci */ 118561847f8eSopenharmony_ci export interface GnssGeofenceRequest { 118661847f8eSopenharmony_ci /** 118761847f8eSopenharmony_ci * Circular fence information. 118861847f8eSopenharmony_ci * 118961847f8eSopenharmony_ci * @type { Geofence } 119061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 119161847f8eSopenharmony_ci * @since 12 119261847f8eSopenharmony_ci */ 119361847f8eSopenharmony_ci geofence: Geofence; 119461847f8eSopenharmony_ci 119561847f8eSopenharmony_ci /** 119661847f8eSopenharmony_ci * Indicates geofence transition status monitored. 119761847f8eSopenharmony_ci * 119861847f8eSopenharmony_ci * @type { Array<GeofenceTransitionEvent> } 119961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 120061847f8eSopenharmony_ci * @since 12 120161847f8eSopenharmony_ci */ 120261847f8eSopenharmony_ci monitorTransitionEvents: Array<GeofenceTransitionEvent>; 120361847f8eSopenharmony_ci 120461847f8eSopenharmony_ci /** 120561847f8eSopenharmony_ci * Indicates the geofence notifications to publish. 120661847f8eSopenharmony_ci * 120761847f8eSopenharmony_ci * @type { ?Array<NotificationRequest> } 120861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 120961847f8eSopenharmony_ci * @since 12 121061847f8eSopenharmony_ci */ 121161847f8eSopenharmony_ci notifications?: Array<NotificationRequest>; 121261847f8eSopenharmony_ci 121361847f8eSopenharmony_ci /** 121461847f8eSopenharmony_ci * Indicates the callback for reporting the geofence transition status. 121561847f8eSopenharmony_ci * 121661847f8eSopenharmony_ci * @type { AsyncCallback<GeofenceTransition> } 121761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 121861847f8eSopenharmony_ci * @since 12 121961847f8eSopenharmony_ci */ 122061847f8eSopenharmony_ci geofenceTransitionCallback: AsyncCallback<GeofenceTransition>; 122161847f8eSopenharmony_ci } 122261847f8eSopenharmony_ci 122361847f8eSopenharmony_ci /** 122461847f8eSopenharmony_ci * Configuring parameters in geofence requests. 122561847f8eSopenharmony_ci * 122661847f8eSopenharmony_ci * @typedef GeofenceRequest 122761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 122861847f8eSopenharmony_ci * @since 9 122961847f8eSopenharmony_ci */ 123061847f8eSopenharmony_ci export interface GeofenceRequest { 123161847f8eSopenharmony_ci /** 123261847f8eSopenharmony_ci * Indicate the user scenario. 123361847f8eSopenharmony_ci * 123461847f8eSopenharmony_ci * @type { LocationRequestScenario } 123561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 123661847f8eSopenharmony_ci * @since 9 123761847f8eSopenharmony_ci */ 123861847f8eSopenharmony_ci scenario: LocationRequestScenario; 123961847f8eSopenharmony_ci 124061847f8eSopenharmony_ci /** 124161847f8eSopenharmony_ci * Circular fence information. 124261847f8eSopenharmony_ci * 124361847f8eSopenharmony_ci * @type { Geofence } 124461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 124561847f8eSopenharmony_ci * @since 9 124661847f8eSopenharmony_ci */ 124761847f8eSopenharmony_ci geofence: Geofence; 124861847f8eSopenharmony_ci } 124961847f8eSopenharmony_ci 125061847f8eSopenharmony_ci /** 125161847f8eSopenharmony_ci * Circular fence information. 125261847f8eSopenharmony_ci * 125361847f8eSopenharmony_ci * @typedef Geofence 125461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 125561847f8eSopenharmony_ci * @since 9 125661847f8eSopenharmony_ci */ 125761847f8eSopenharmony_ci export interface Geofence { 125861847f8eSopenharmony_ci /** 125961847f8eSopenharmony_ci * Latitude of the center point of the circular fence. 126061847f8eSopenharmony_ci * 126161847f8eSopenharmony_ci * @type { number } 126261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 126361847f8eSopenharmony_ci * @since 9 126461847f8eSopenharmony_ci */ 126561847f8eSopenharmony_ci latitude: number; 126661847f8eSopenharmony_ci 126761847f8eSopenharmony_ci /** 126861847f8eSopenharmony_ci * Longitude of the center point of the circular fence. 126961847f8eSopenharmony_ci * 127061847f8eSopenharmony_ci * @type { number } 127161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 127261847f8eSopenharmony_ci * @since 9 127361847f8eSopenharmony_ci */ 127461847f8eSopenharmony_ci longitude: number; 127561847f8eSopenharmony_ci 127661847f8eSopenharmony_ci /** 127761847f8eSopenharmony_ci * Coordinate system type. 127861847f8eSopenharmony_ci * 127961847f8eSopenharmony_ci * @type { ?CoordinateSystemType } 128061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 128161847f8eSopenharmony_ci * @since 12 128261847f8eSopenharmony_ci */ 128361847f8eSopenharmony_ci coordinateSystemType?: CoordinateSystemType; 128461847f8eSopenharmony_ci 128561847f8eSopenharmony_ci /** 128661847f8eSopenharmony_ci * Radius of the circular fence. 128761847f8eSopenharmony_ci * 128861847f8eSopenharmony_ci * @type { number } 128961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 129061847f8eSopenharmony_ci * @since 9 129161847f8eSopenharmony_ci */ 129261847f8eSopenharmony_ci radius: number; 129361847f8eSopenharmony_ci 129461847f8eSopenharmony_ci /** 129561847f8eSopenharmony_ci * Expiration of the circular fence. 129661847f8eSopenharmony_ci * 129761847f8eSopenharmony_ci * @type { number } 129861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 129961847f8eSopenharmony_ci * @since 9 130061847f8eSopenharmony_ci */ 130161847f8eSopenharmony_ci expiration: number; 130261847f8eSopenharmony_ci } 130361847f8eSopenharmony_ci 130461847f8eSopenharmony_ci /** 130561847f8eSopenharmony_ci * Configuring parameters in reverse geocode requests. 130661847f8eSopenharmony_ci * 130761847f8eSopenharmony_ci * @typedef ReverseGeoCodeRequest 130861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 130961847f8eSopenharmony_ci * @since 9 131061847f8eSopenharmony_ci */ 131161847f8eSopenharmony_ci export interface ReverseGeoCodeRequest { 131261847f8eSopenharmony_ci /** 131361847f8eSopenharmony_ci * Indicates the language area information. 131461847f8eSopenharmony_ci * 131561847f8eSopenharmony_ci * @type { ?string } 131661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 131761847f8eSopenharmony_ci * @since 9 131861847f8eSopenharmony_ci */ 131961847f8eSopenharmony_ci locale?: string; 132061847f8eSopenharmony_ci 132161847f8eSopenharmony_ci /** 132261847f8eSopenharmony_ci * Indicates the country information. 132361847f8eSopenharmony_ci * 132461847f8eSopenharmony_ci * @type { ?string } 132561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 132661847f8eSopenharmony_ci * @since 12 132761847f8eSopenharmony_ci */ 132861847f8eSopenharmony_ci country?: string; 132961847f8eSopenharmony_ci 133061847f8eSopenharmony_ci /** 133161847f8eSopenharmony_ci * Latitude for reverse geocoding query. 133261847f8eSopenharmony_ci * 133361847f8eSopenharmony_ci * @type { number } 133461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 133561847f8eSopenharmony_ci * @since 9 133661847f8eSopenharmony_ci */ 133761847f8eSopenharmony_ci latitude: number; 133861847f8eSopenharmony_ci 133961847f8eSopenharmony_ci /** 134061847f8eSopenharmony_ci * Longitude for reverse geocoding query. 134161847f8eSopenharmony_ci * 134261847f8eSopenharmony_ci * @type { number } 134361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 134461847f8eSopenharmony_ci * @since 9 134561847f8eSopenharmony_ci */ 134661847f8eSopenharmony_ci longitude: number; 134761847f8eSopenharmony_ci 134861847f8eSopenharmony_ci /** 134961847f8eSopenharmony_ci * Indicates the maximum number of addresses returned by reverse geocoding query. 135061847f8eSopenharmony_ci * 135161847f8eSopenharmony_ci * @type { ?number } 135261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 135361847f8eSopenharmony_ci * @since 9 135461847f8eSopenharmony_ci */ 135561847f8eSopenharmony_ci maxItems?: number; 135661847f8eSopenharmony_ci } 135761847f8eSopenharmony_ci 135861847f8eSopenharmony_ci /** 135961847f8eSopenharmony_ci * Configuring parameters in geocode requests. 136061847f8eSopenharmony_ci * 136161847f8eSopenharmony_ci * @typedef GeoCodeRequest 136261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 136361847f8eSopenharmony_ci * @since 9 136461847f8eSopenharmony_ci */ 136561847f8eSopenharmony_ci export interface GeoCodeRequest { 136661847f8eSopenharmony_ci /** 136761847f8eSopenharmony_ci * Indicates the language area information. 136861847f8eSopenharmony_ci * 136961847f8eSopenharmony_ci * @type { ?string } 137061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 137161847f8eSopenharmony_ci * @since 9 137261847f8eSopenharmony_ci */ 137361847f8eSopenharmony_ci locale?: string; 137461847f8eSopenharmony_ci 137561847f8eSopenharmony_ci /** 137661847f8eSopenharmony_ci * Indicates the country information. 137761847f8eSopenharmony_ci * 137861847f8eSopenharmony_ci * @type { ?string } 137961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 138061847f8eSopenharmony_ci * @since 12 138161847f8eSopenharmony_ci */ 138261847f8eSopenharmony_ci country?: string; 138361847f8eSopenharmony_ci 138461847f8eSopenharmony_ci /** 138561847f8eSopenharmony_ci * Address information. 138661847f8eSopenharmony_ci * 138761847f8eSopenharmony_ci * @type { string } 138861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 138961847f8eSopenharmony_ci * @since 9 139061847f8eSopenharmony_ci */ 139161847f8eSopenharmony_ci description: string; 139261847f8eSopenharmony_ci 139361847f8eSopenharmony_ci /** 139461847f8eSopenharmony_ci * Indicates the maximum number of geocode query results. 139561847f8eSopenharmony_ci * 139661847f8eSopenharmony_ci * @type { ?number } 139761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 139861847f8eSopenharmony_ci * @since 9 139961847f8eSopenharmony_ci */ 140061847f8eSopenharmony_ci maxItems?: number; 140161847f8eSopenharmony_ci 140261847f8eSopenharmony_ci /** 140361847f8eSopenharmony_ci * Indicates the minimum latitude for geocoding query results. 140461847f8eSopenharmony_ci * 140561847f8eSopenharmony_ci * @type { ?number } 140661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 140761847f8eSopenharmony_ci * @since 9 140861847f8eSopenharmony_ci */ 140961847f8eSopenharmony_ci minLatitude?: number; 141061847f8eSopenharmony_ci 141161847f8eSopenharmony_ci /** 141261847f8eSopenharmony_ci * Indicates the minimum longitude for geocoding query results. 141361847f8eSopenharmony_ci * 141461847f8eSopenharmony_ci * @type { ?number } 141561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 141661847f8eSopenharmony_ci * @since 9 141761847f8eSopenharmony_ci */ 141861847f8eSopenharmony_ci minLongitude?: number; 141961847f8eSopenharmony_ci 142061847f8eSopenharmony_ci /** 142161847f8eSopenharmony_ci * Indicates the maximum latitude for geocoding query results. 142261847f8eSopenharmony_ci * 142361847f8eSopenharmony_ci * @type { ?number } 142461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 142561847f8eSopenharmony_ci * @since 9 142661847f8eSopenharmony_ci */ 142761847f8eSopenharmony_ci maxLatitude?: number; 142861847f8eSopenharmony_ci 142961847f8eSopenharmony_ci /** 143061847f8eSopenharmony_ci * Indicates the maximum longitude for geocoding query results. 143161847f8eSopenharmony_ci * 143261847f8eSopenharmony_ci * @type { ?number } 143361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 143461847f8eSopenharmony_ci * @since 9 143561847f8eSopenharmony_ci */ 143661847f8eSopenharmony_ci maxLongitude?: number; 143761847f8eSopenharmony_ci } 143861847f8eSopenharmony_ci 143961847f8eSopenharmony_ci /** 144061847f8eSopenharmony_ci * Data struct describes geographic locations. 144161847f8eSopenharmony_ci * 144261847f8eSopenharmony_ci * @typedef GeoAddress 144361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 144461847f8eSopenharmony_ci * @since 9 144561847f8eSopenharmony_ci */ 144661847f8eSopenharmony_ci export interface GeoAddress { 144761847f8eSopenharmony_ci /** 144861847f8eSopenharmony_ci * Indicates latitude information. 144961847f8eSopenharmony_ci * A positive value indicates north latitude, 145061847f8eSopenharmony_ci * and a negative value indicates south latitude. 145161847f8eSopenharmony_ci * 145261847f8eSopenharmony_ci * @type { ?number } 145361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 145461847f8eSopenharmony_ci * @since 9 145561847f8eSopenharmony_ci */ 145661847f8eSopenharmony_ci latitude?: number; 145761847f8eSopenharmony_ci 145861847f8eSopenharmony_ci /** 145961847f8eSopenharmony_ci * Indicates longitude information. 146061847f8eSopenharmony_ci * A positive value indicates east longitude , 146161847f8eSopenharmony_ci * and a negative value indicates west longitude. 146261847f8eSopenharmony_ci * 146361847f8eSopenharmony_ci * @type { ?number } 146461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 146561847f8eSopenharmony_ci * @since 9 146661847f8eSopenharmony_ci */ 146761847f8eSopenharmony_ci longitude?: number; 146861847f8eSopenharmony_ci 146961847f8eSopenharmony_ci /** 147061847f8eSopenharmony_ci * Indicates language used for the location description. 147161847f8eSopenharmony_ci * zh indicates Chinese, and en indicates English. 147261847f8eSopenharmony_ci * 147361847f8eSopenharmony_ci * @type { ?string } 147461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 147561847f8eSopenharmony_ci * @since 9 147661847f8eSopenharmony_ci */ 147761847f8eSopenharmony_ci locale?: string; 147861847f8eSopenharmony_ci 147961847f8eSopenharmony_ci /** 148061847f8eSopenharmony_ci * Indicates detailed address information. 148161847f8eSopenharmony_ci * 148261847f8eSopenharmony_ci * @type { ?string } 148361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 148461847f8eSopenharmony_ci * @since 9 148561847f8eSopenharmony_ci */ 148661847f8eSopenharmony_ci placeName?: string; 148761847f8eSopenharmony_ci 148861847f8eSopenharmony_ci /** 148961847f8eSopenharmony_ci * Indicates country code. 149061847f8eSopenharmony_ci * 149161847f8eSopenharmony_ci * @type { ?string } 149261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 149361847f8eSopenharmony_ci * @since 9 149461847f8eSopenharmony_ci */ 149561847f8eSopenharmony_ci countryCode?: string; 149661847f8eSopenharmony_ci 149761847f8eSopenharmony_ci /** 149861847f8eSopenharmony_ci * Indicates country name. 149961847f8eSopenharmony_ci * 150061847f8eSopenharmony_ci * @type { ?string } 150161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 150261847f8eSopenharmony_ci * @since 9 150361847f8eSopenharmony_ci */ 150461847f8eSopenharmony_ci countryName?: string; 150561847f8eSopenharmony_ci 150661847f8eSopenharmony_ci /** 150761847f8eSopenharmony_ci * Indicates administrative region name. 150861847f8eSopenharmony_ci * 150961847f8eSopenharmony_ci * @type { ?string } 151061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 151161847f8eSopenharmony_ci * @since 9 151261847f8eSopenharmony_ci */ 151361847f8eSopenharmony_ci administrativeArea?: string; 151461847f8eSopenharmony_ci 151561847f8eSopenharmony_ci /** 151661847f8eSopenharmony_ci * Indicates sub-administrative region name. 151761847f8eSopenharmony_ci * 151861847f8eSopenharmony_ci * @type { ?string } 151961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 152061847f8eSopenharmony_ci * @since 9 152161847f8eSopenharmony_ci */ 152261847f8eSopenharmony_ci subAdministrativeArea?: string; 152361847f8eSopenharmony_ci 152461847f8eSopenharmony_ci /** 152561847f8eSopenharmony_ci * Indicates locality information. 152661847f8eSopenharmony_ci * 152761847f8eSopenharmony_ci * @type { ?string } 152861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 152961847f8eSopenharmony_ci * @since 9 153061847f8eSopenharmony_ci */ 153161847f8eSopenharmony_ci locality?: string; 153261847f8eSopenharmony_ci 153361847f8eSopenharmony_ci /** 153461847f8eSopenharmony_ci * Indicates sub-locality information. 153561847f8eSopenharmony_ci * 153661847f8eSopenharmony_ci * @type { ?string } 153761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 153861847f8eSopenharmony_ci * @since 9 153961847f8eSopenharmony_ci */ 154061847f8eSopenharmony_ci subLocality?: string; 154161847f8eSopenharmony_ci 154261847f8eSopenharmony_ci /** 154361847f8eSopenharmony_ci * Indicates road name. 154461847f8eSopenharmony_ci * 154561847f8eSopenharmony_ci * @type { ?string } 154661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 154761847f8eSopenharmony_ci * @since 9 154861847f8eSopenharmony_ci */ 154961847f8eSopenharmony_ci roadName?: string; 155061847f8eSopenharmony_ci 155161847f8eSopenharmony_ci /** 155261847f8eSopenharmony_ci * Indicates auxiliary road information. 155361847f8eSopenharmony_ci * 155461847f8eSopenharmony_ci * @type { ?string } 155561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 155661847f8eSopenharmony_ci * @since 9 155761847f8eSopenharmony_ci */ 155861847f8eSopenharmony_ci subRoadName?: string; 155961847f8eSopenharmony_ci 156061847f8eSopenharmony_ci /** 156161847f8eSopenharmony_ci * Indicates house information. 156261847f8eSopenharmony_ci * 156361847f8eSopenharmony_ci * @type { ?string } 156461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 156561847f8eSopenharmony_ci * @since 9 156661847f8eSopenharmony_ci */ 156761847f8eSopenharmony_ci premises?: string; 156861847f8eSopenharmony_ci 156961847f8eSopenharmony_ci /** 157061847f8eSopenharmony_ci * Indicates postal code. 157161847f8eSopenharmony_ci * 157261847f8eSopenharmony_ci * @type { ?string } 157361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 157461847f8eSopenharmony_ci * @since 9 157561847f8eSopenharmony_ci */ 157661847f8eSopenharmony_ci postalCode?: string; 157761847f8eSopenharmony_ci 157861847f8eSopenharmony_ci /** 157961847f8eSopenharmony_ci * Indicates phone number. 158061847f8eSopenharmony_ci * 158161847f8eSopenharmony_ci * @type { ?string } 158261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 158361847f8eSopenharmony_ci * @since 9 158461847f8eSopenharmony_ci */ 158561847f8eSopenharmony_ci phoneNumber?: string; 158661847f8eSopenharmony_ci 158761847f8eSopenharmony_ci /** 158861847f8eSopenharmony_ci * Indicates website URL. 158961847f8eSopenharmony_ci * 159061847f8eSopenharmony_ci * @type { ?string } 159161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 159261847f8eSopenharmony_ci * @since 9 159361847f8eSopenharmony_ci */ 159461847f8eSopenharmony_ci addressUrl?: string; 159561847f8eSopenharmony_ci 159661847f8eSopenharmony_ci /** 159761847f8eSopenharmony_ci * Indicates additional information. 159861847f8eSopenharmony_ci * 159961847f8eSopenharmony_ci * @type { ?Array<string> } 160061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 160161847f8eSopenharmony_ci * @since 9 160261847f8eSopenharmony_ci */ 160361847f8eSopenharmony_ci descriptions?: Array<string>; 160461847f8eSopenharmony_ci 160561847f8eSopenharmony_ci /** 160661847f8eSopenharmony_ci * Indicates the amount of additional descriptive information. 160761847f8eSopenharmony_ci * 160861847f8eSopenharmony_ci * @type { ?number } 160961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 161061847f8eSopenharmony_ci * @since 9 161161847f8eSopenharmony_ci */ 161261847f8eSopenharmony_ci descriptionsSize?: number; 161361847f8eSopenharmony_ci 161461847f8eSopenharmony_ci /** 161561847f8eSopenharmony_ci * Indicates whether it is an mock GeoAddress 161661847f8eSopenharmony_ci * 161761847f8eSopenharmony_ci * @type { ?Boolean } 161861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geocoder 161961847f8eSopenharmony_ci * @systemapi 162061847f8eSopenharmony_ci * @since 9 162161847f8eSopenharmony_ci */ 162261847f8eSopenharmony_ci isFromMock?: Boolean; 162361847f8eSopenharmony_ci } 162461847f8eSopenharmony_ci 162561847f8eSopenharmony_ci /** 162661847f8eSopenharmony_ci * Configuring parameters in location requests. 162761847f8eSopenharmony_ci * 162861847f8eSopenharmony_ci * @typedef LocationRequest 162961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 163061847f8eSopenharmony_ci * @since 9 163161847f8eSopenharmony_ci */ 163261847f8eSopenharmony_ci /** 163361847f8eSopenharmony_ci * Configuring parameters in location requests. 163461847f8eSopenharmony_ci * 163561847f8eSopenharmony_ci * @typedef LocationRequest 163661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 163761847f8eSopenharmony_ci * @atomicservice 163861847f8eSopenharmony_ci * @since 11 163961847f8eSopenharmony_ci */ 164061847f8eSopenharmony_ci export interface LocationRequest { 164161847f8eSopenharmony_ci /** 164261847f8eSopenharmony_ci * Priority of the location request. 164361847f8eSopenharmony_ci * 164461847f8eSopenharmony_ci * @type { ?LocationRequestPriority } 164561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 164661847f8eSopenharmony_ci * @since 9 164761847f8eSopenharmony_ci */ 164861847f8eSopenharmony_ci /** 164961847f8eSopenharmony_ci * Priority of the location request. 165061847f8eSopenharmony_ci * 165161847f8eSopenharmony_ci * @type { ?LocationRequestPriority } 165261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 165361847f8eSopenharmony_ci * @atomicservice 165461847f8eSopenharmony_ci * @since 11 165561847f8eSopenharmony_ci */ 165661847f8eSopenharmony_ci priority?: LocationRequestPriority; 165761847f8eSopenharmony_ci 165861847f8eSopenharmony_ci /** 165961847f8eSopenharmony_ci * User scenario of the location request. 166061847f8eSopenharmony_ci * 166161847f8eSopenharmony_ci * @type { ?LocationRequestScenario } 166261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 166361847f8eSopenharmony_ci * @since 9 166461847f8eSopenharmony_ci */ 166561847f8eSopenharmony_ci /** 166661847f8eSopenharmony_ci * User scenario of the location request. 166761847f8eSopenharmony_ci * 166861847f8eSopenharmony_ci * @type { ?LocationRequestScenario } 166961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 167061847f8eSopenharmony_ci * @atomicservice 167161847f8eSopenharmony_ci * @since 11 167261847f8eSopenharmony_ci */ 167361847f8eSopenharmony_ci scenario?: LocationRequestScenario; 167461847f8eSopenharmony_ci 167561847f8eSopenharmony_ci /** 167661847f8eSopenharmony_ci * Location report interval. 167761847f8eSopenharmony_ci * 167861847f8eSopenharmony_ci * @type { ?number } 167961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 168061847f8eSopenharmony_ci * @since 9 168161847f8eSopenharmony_ci */ 168261847f8eSopenharmony_ci /** 168361847f8eSopenharmony_ci * Location report interval. 168461847f8eSopenharmony_ci * 168561847f8eSopenharmony_ci * @type { ?number } 168661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 168761847f8eSopenharmony_ci * @atomicservice 168861847f8eSopenharmony_ci * @since 11 168961847f8eSopenharmony_ci */ 169061847f8eSopenharmony_ci timeInterval?: number; 169161847f8eSopenharmony_ci 169261847f8eSopenharmony_ci /** 169361847f8eSopenharmony_ci * Location report distance interval. 169461847f8eSopenharmony_ci * 169561847f8eSopenharmony_ci * @type { ?number } 169661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 169761847f8eSopenharmony_ci * @since 9 169861847f8eSopenharmony_ci */ 169961847f8eSopenharmony_ci /** 170061847f8eSopenharmony_ci * Location report distance interval. 170161847f8eSopenharmony_ci * 170261847f8eSopenharmony_ci * @type { ?number } 170361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 170461847f8eSopenharmony_ci * @atomicservice 170561847f8eSopenharmony_ci * @since 11 170661847f8eSopenharmony_ci */ 170761847f8eSopenharmony_ci distanceInterval?: number; 170861847f8eSopenharmony_ci 170961847f8eSopenharmony_ci /** 171061847f8eSopenharmony_ci * Accuracy requirements for reporting locations. 171161847f8eSopenharmony_ci * 171261847f8eSopenharmony_ci * @type { ?number } 171361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 171461847f8eSopenharmony_ci * @since 9 171561847f8eSopenharmony_ci */ 171661847f8eSopenharmony_ci /** 171761847f8eSopenharmony_ci * Accuracy requirements for reporting locations. 171861847f8eSopenharmony_ci * 171961847f8eSopenharmony_ci * @type { ?number } 172061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 172161847f8eSopenharmony_ci * @atomicservice 172261847f8eSopenharmony_ci * @since 11 172361847f8eSopenharmony_ci */ 172461847f8eSopenharmony_ci maxAccuracy?: number; 172561847f8eSopenharmony_ci } 172661847f8eSopenharmony_ci 172761847f8eSopenharmony_ci /** 172861847f8eSopenharmony_ci * Configuring parameters in current location requests. 172961847f8eSopenharmony_ci * 173061847f8eSopenharmony_ci * @typedef CurrentLocationRequest 173161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 173261847f8eSopenharmony_ci * @since 9 173361847f8eSopenharmony_ci */ 173461847f8eSopenharmony_ci /** 173561847f8eSopenharmony_ci * Configuring parameters in current location requests. 173661847f8eSopenharmony_ci * 173761847f8eSopenharmony_ci * @typedef CurrentLocationRequest 173861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 173961847f8eSopenharmony_ci * @atomicservice 174061847f8eSopenharmony_ci * @since 11 174161847f8eSopenharmony_ci */ 174261847f8eSopenharmony_ci export interface CurrentLocationRequest { 174361847f8eSopenharmony_ci /** 174461847f8eSopenharmony_ci * Priority of the location request. 174561847f8eSopenharmony_ci * 174661847f8eSopenharmony_ci * @type { ?LocationRequestPriority } 174761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 174861847f8eSopenharmony_ci * @since 9 174961847f8eSopenharmony_ci */ 175061847f8eSopenharmony_ci /** 175161847f8eSopenharmony_ci * Priority of the location request. 175261847f8eSopenharmony_ci * 175361847f8eSopenharmony_ci * @type { ?LocationRequestPriority } 175461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 175561847f8eSopenharmony_ci * @atomicservice 175661847f8eSopenharmony_ci * @since 11 175761847f8eSopenharmony_ci */ 175861847f8eSopenharmony_ci priority?: LocationRequestPriority; 175961847f8eSopenharmony_ci 176061847f8eSopenharmony_ci /** 176161847f8eSopenharmony_ci * User scenario of the location request. 176261847f8eSopenharmony_ci * 176361847f8eSopenharmony_ci * @type { ?LocationRequestScenario } 176461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 176561847f8eSopenharmony_ci * @since 9 176661847f8eSopenharmony_ci */ 176761847f8eSopenharmony_ci /** 176861847f8eSopenharmony_ci * User scenario of the location request. 176961847f8eSopenharmony_ci * 177061847f8eSopenharmony_ci * @type { ?LocationRequestScenario } 177161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 177261847f8eSopenharmony_ci * @atomicservice 177361847f8eSopenharmony_ci * @since 11 177461847f8eSopenharmony_ci */ 177561847f8eSopenharmony_ci scenario?: LocationRequestScenario; 177661847f8eSopenharmony_ci 177761847f8eSopenharmony_ci /** 177861847f8eSopenharmony_ci * Accuracy requirements for reporting locations. 177961847f8eSopenharmony_ci * 178061847f8eSopenharmony_ci * @type { ?number } 178161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 178261847f8eSopenharmony_ci * @since 9 178361847f8eSopenharmony_ci */ 178461847f8eSopenharmony_ci /** 178561847f8eSopenharmony_ci * Accuracy requirements for reporting locations. 178661847f8eSopenharmony_ci * 178761847f8eSopenharmony_ci * @type { ?number } 178861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 178961847f8eSopenharmony_ci * @atomicservice 179061847f8eSopenharmony_ci * @since 11 179161847f8eSopenharmony_ci */ 179261847f8eSopenharmony_ci maxAccuracy?: number; 179361847f8eSopenharmony_ci 179461847f8eSopenharmony_ci /** 179561847f8eSopenharmony_ci * Timeout interval of a single location request. 179661847f8eSopenharmony_ci * 179761847f8eSopenharmony_ci * @type { ?number } 179861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 179961847f8eSopenharmony_ci * @since 9 180061847f8eSopenharmony_ci */ 180161847f8eSopenharmony_ci /** 180261847f8eSopenharmony_ci * Timeout interval of a single location request. 180361847f8eSopenharmony_ci * 180461847f8eSopenharmony_ci * @type { ?number } 180561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 180661847f8eSopenharmony_ci * @atomicservice 180761847f8eSopenharmony_ci * @since 11 180861847f8eSopenharmony_ci */ 180961847f8eSopenharmony_ci timeoutMs?: number; 181061847f8eSopenharmony_ci } 181161847f8eSopenharmony_ci 181261847f8eSopenharmony_ci /** 181361847f8eSopenharmony_ci * Geofence transition status. 181461847f8eSopenharmony_ci * 181561847f8eSopenharmony_ci * @typedef GeofenceTransition 181661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 181761847f8eSopenharmony_ci * @since 12 181861847f8eSopenharmony_ci */ 181961847f8eSopenharmony_ci export interface GeofenceTransition { 182061847f8eSopenharmony_ci /** 182161847f8eSopenharmony_ci * ID of the geofence. 182261847f8eSopenharmony_ci * 182361847f8eSopenharmony_ci * @type { number } 182461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 182561847f8eSopenharmony_ci * @since 12 182661847f8eSopenharmony_ci */ 182761847f8eSopenharmony_ci geofenceId: number; 182861847f8eSopenharmony_ci 182961847f8eSopenharmony_ci /** 183061847f8eSopenharmony_ci * Indicates the geofence transition status. 183161847f8eSopenharmony_ci * 183261847f8eSopenharmony_ci * @type { GeofenceTransitionEvent } 183361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 183461847f8eSopenharmony_ci * @since 12 183561847f8eSopenharmony_ci */ 183661847f8eSopenharmony_ci transitionEvent: GeofenceTransitionEvent; 183761847f8eSopenharmony_ci } 183861847f8eSopenharmony_ci 183961847f8eSopenharmony_ci /** 184061847f8eSopenharmony_ci * Configuring parameters in continuous location requests. 184161847f8eSopenharmony_ci * 184261847f8eSopenharmony_ci * @typedef ContinuousLocationRequest 184361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 184461847f8eSopenharmony_ci * @atomicservice 184561847f8eSopenharmony_ci * @since 12 184661847f8eSopenharmony_ci */ 184761847f8eSopenharmony_ci export interface ContinuousLocationRequest { 184861847f8eSopenharmony_ci /** 184961847f8eSopenharmony_ci * Location report interval, in seconds. 185061847f8eSopenharmony_ci * 185161847f8eSopenharmony_ci * @type { number } 185261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 185361847f8eSopenharmony_ci * @atomicservice 185461847f8eSopenharmony_ci * @since 12 185561847f8eSopenharmony_ci */ 185661847f8eSopenharmony_ci interval: number; 185761847f8eSopenharmony_ci 185861847f8eSopenharmony_ci /** 185961847f8eSopenharmony_ci * Location scenario. You can select a user activity scenario or power consumption scenario. 186061847f8eSopenharmony_ci * 186161847f8eSopenharmony_ci * @type { UserActivityScenario | PowerConsumptionScenario } 186261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 186361847f8eSopenharmony_ci * @atomicservice 186461847f8eSopenharmony_ci * @since 12 186561847f8eSopenharmony_ci */ 186661847f8eSopenharmony_ci locationScenario: UserActivityScenario | PowerConsumptionScenario; 186761847f8eSopenharmony_ci } 186861847f8eSopenharmony_ci 186961847f8eSopenharmony_ci /** 187061847f8eSopenharmony_ci * Configuring parameters in single location requests. 187161847f8eSopenharmony_ci * 187261847f8eSopenharmony_ci * @typedef SingleLocationRequest 187361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 187461847f8eSopenharmony_ci * @atomicservice 187561847f8eSopenharmony_ci * @since 12 187661847f8eSopenharmony_ci */ 187761847f8eSopenharmony_ci export interface SingleLocationRequest { 187861847f8eSopenharmony_ci /** 187961847f8eSopenharmony_ci * Priority of the location request. 188061847f8eSopenharmony_ci * 188161847f8eSopenharmony_ci * @type { LocatingPriority } 188261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 188361847f8eSopenharmony_ci * @atomicservice 188461847f8eSopenharmony_ci * @since 12 188561847f8eSopenharmony_ci */ 188661847f8eSopenharmony_ci locatingPriority: LocatingPriority; 188761847f8eSopenharmony_ci 188861847f8eSopenharmony_ci /** 188961847f8eSopenharmony_ci * Timeout of a single location request, in milliseconds. 189061847f8eSopenharmony_ci * 189161847f8eSopenharmony_ci * @type { number } 189261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 189361847f8eSopenharmony_ci * @atomicservice 189461847f8eSopenharmony_ci * @since 12 189561847f8eSopenharmony_ci */ 189661847f8eSopenharmony_ci locatingTimeoutMs: number; 189761847f8eSopenharmony_ci } 189861847f8eSopenharmony_ci 189961847f8eSopenharmony_ci /** 190061847f8eSopenharmony_ci * Provides information about geographic locations. 190161847f8eSopenharmony_ci * 190261847f8eSopenharmony_ci * @typedef Location 190361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 190461847f8eSopenharmony_ci * @since 9 190561847f8eSopenharmony_ci */ 190661847f8eSopenharmony_ci /** 190761847f8eSopenharmony_ci * Provides information about geographic locations. 190861847f8eSopenharmony_ci * 190961847f8eSopenharmony_ci * @typedef Location 191061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 191161847f8eSopenharmony_ci * @atomicservice 191261847f8eSopenharmony_ci * @since 11 191361847f8eSopenharmony_ci */ 191461847f8eSopenharmony_ci export interface Location { 191561847f8eSopenharmony_ci /** 191661847f8eSopenharmony_ci * Indicates latitude information. 191761847f8eSopenharmony_ci * A positive value indicates north latitude, 191861847f8eSopenharmony_ci * and a negative value indicates south latitude. 191961847f8eSopenharmony_ci * 192061847f8eSopenharmony_ci * @type { number } 192161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 192261847f8eSopenharmony_ci * @since 9 192361847f8eSopenharmony_ci */ 192461847f8eSopenharmony_ci /** 192561847f8eSopenharmony_ci * Indicates latitude information. 192661847f8eSopenharmony_ci * A positive value indicates north latitude, 192761847f8eSopenharmony_ci * and a negative value indicates south latitude. 192861847f8eSopenharmony_ci * 192961847f8eSopenharmony_ci * @type { number } 193061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 193161847f8eSopenharmony_ci * @atomicservice 193261847f8eSopenharmony_ci * @since 11 193361847f8eSopenharmony_ci */ 193461847f8eSopenharmony_ci latitude: number; 193561847f8eSopenharmony_ci 193661847f8eSopenharmony_ci /** 193761847f8eSopenharmony_ci * Indicates Longitude information. 193861847f8eSopenharmony_ci * A positive value indicates east longitude , 193961847f8eSopenharmony_ci * and a negative value indicates west longitude. 194061847f8eSopenharmony_ci * 194161847f8eSopenharmony_ci * @type { number } 194261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 194361847f8eSopenharmony_ci * @since 9 194461847f8eSopenharmony_ci */ 194561847f8eSopenharmony_ci /** 194661847f8eSopenharmony_ci * Indicates Longitude information. 194761847f8eSopenharmony_ci * A positive value indicates east longitude , 194861847f8eSopenharmony_ci * and a negative value indicates west longitude. 194961847f8eSopenharmony_ci * 195061847f8eSopenharmony_ci * @type { number } 195161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 195261847f8eSopenharmony_ci * @atomicservice 195361847f8eSopenharmony_ci * @since 11 195461847f8eSopenharmony_ci */ 195561847f8eSopenharmony_ci longitude: number; 195661847f8eSopenharmony_ci 195761847f8eSopenharmony_ci /** 195861847f8eSopenharmony_ci * Indicates location altitude, in meters. 195961847f8eSopenharmony_ci * 196061847f8eSopenharmony_ci * @type { number } 196161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 196261847f8eSopenharmony_ci * @since 9 196361847f8eSopenharmony_ci */ 196461847f8eSopenharmony_ci /** 196561847f8eSopenharmony_ci * Indicates location altitude, in meters. 196661847f8eSopenharmony_ci * 196761847f8eSopenharmony_ci * @type { number } 196861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 196961847f8eSopenharmony_ci * @atomicservice 197061847f8eSopenharmony_ci * @since 11 197161847f8eSopenharmony_ci */ 197261847f8eSopenharmony_ci altitude: number; 197361847f8eSopenharmony_ci 197461847f8eSopenharmony_ci /** 197561847f8eSopenharmony_ci * Indicates location accuracy, in meters. 197661847f8eSopenharmony_ci * 197761847f8eSopenharmony_ci * @type { number } 197861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 197961847f8eSopenharmony_ci * @since 9 198061847f8eSopenharmony_ci */ 198161847f8eSopenharmony_ci /** 198261847f8eSopenharmony_ci * Indicates location accuracy, in meters. 198361847f8eSopenharmony_ci * 198461847f8eSopenharmony_ci * @type { number } 198561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 198661847f8eSopenharmony_ci * @atomicservice 198761847f8eSopenharmony_ci * @since 11 198861847f8eSopenharmony_ci */ 198961847f8eSopenharmony_ci accuracy: number; 199061847f8eSopenharmony_ci 199161847f8eSopenharmony_ci /** 199261847f8eSopenharmony_ci * Indicates speed, in m/s. 199361847f8eSopenharmony_ci * 199461847f8eSopenharmony_ci * @type { number } 199561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 199661847f8eSopenharmony_ci * @since 9 199761847f8eSopenharmony_ci */ 199861847f8eSopenharmony_ci /** 199961847f8eSopenharmony_ci * Indicates speed, in m/s. 200061847f8eSopenharmony_ci * 200161847f8eSopenharmony_ci * @type { number } 200261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 200361847f8eSopenharmony_ci * @atomicservice 200461847f8eSopenharmony_ci * @since 11 200561847f8eSopenharmony_ci */ 200661847f8eSopenharmony_ci speed: number; 200761847f8eSopenharmony_ci 200861847f8eSopenharmony_ci /** 200961847f8eSopenharmony_ci * Indicates location timestamp in the UTC format. 201061847f8eSopenharmony_ci * 201161847f8eSopenharmony_ci * @type { number } 201261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 201361847f8eSopenharmony_ci * @since 9 201461847f8eSopenharmony_ci */ 201561847f8eSopenharmony_ci /** 201661847f8eSopenharmony_ci * Indicates location timestamp in the UTC format. 201761847f8eSopenharmony_ci * 201861847f8eSopenharmony_ci * @type { number } 201961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 202061847f8eSopenharmony_ci * @atomicservice 202161847f8eSopenharmony_ci * @since 11 202261847f8eSopenharmony_ci */ 202361847f8eSopenharmony_ci timeStamp: number; 202461847f8eSopenharmony_ci 202561847f8eSopenharmony_ci /** 202661847f8eSopenharmony_ci * Indicates direction information. 202761847f8eSopenharmony_ci * 202861847f8eSopenharmony_ci * @type { number } 202961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 203061847f8eSopenharmony_ci * @since 9 203161847f8eSopenharmony_ci */ 203261847f8eSopenharmony_ci /** 203361847f8eSopenharmony_ci * Indicates direction information. 203461847f8eSopenharmony_ci * 203561847f8eSopenharmony_ci * @type { number } 203661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 203761847f8eSopenharmony_ci * @atomicservice 203861847f8eSopenharmony_ci * @since 11 203961847f8eSopenharmony_ci */ 204061847f8eSopenharmony_ci direction: number; 204161847f8eSopenharmony_ci 204261847f8eSopenharmony_ci /** 204361847f8eSopenharmony_ci * Indicates location timestamp since boot. 204461847f8eSopenharmony_ci * 204561847f8eSopenharmony_ci * @type { number } 204661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 204761847f8eSopenharmony_ci * @since 9 204861847f8eSopenharmony_ci */ 204961847f8eSopenharmony_ci /** 205061847f8eSopenharmony_ci * Indicates location timestamp since boot. 205161847f8eSopenharmony_ci * 205261847f8eSopenharmony_ci * @type { number } 205361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 205461847f8eSopenharmony_ci * @atomicservice 205561847f8eSopenharmony_ci * @since 11 205661847f8eSopenharmony_ci */ 205761847f8eSopenharmony_ci timeSinceBoot: number; 205861847f8eSopenharmony_ci 205961847f8eSopenharmony_ci /** 206061847f8eSopenharmony_ci * Indicates additional information. 206161847f8eSopenharmony_ci * 206261847f8eSopenharmony_ci * @type { ?Array<string> } 206361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 206461847f8eSopenharmony_ci * @since 9 206561847f8eSopenharmony_ci */ 206661847f8eSopenharmony_ci /** 206761847f8eSopenharmony_ci * Indicates additional information. 206861847f8eSopenharmony_ci * 206961847f8eSopenharmony_ci * @type { ?Array<string> } 207061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 207161847f8eSopenharmony_ci * @atomicservice 207261847f8eSopenharmony_ci * @since 11 207361847f8eSopenharmony_ci */ 207461847f8eSopenharmony_ci additions?: Array<string>; 207561847f8eSopenharmony_ci 207661847f8eSopenharmony_ci /** 207761847f8eSopenharmony_ci * Indicates additional information map. 207861847f8eSopenharmony_ci * 207961847f8eSopenharmony_ci * @type { ?Map<string, string> } 208061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 208161847f8eSopenharmony_ci * @atomicservice 208261847f8eSopenharmony_ci * @since 12 208361847f8eSopenharmony_ci */ 208461847f8eSopenharmony_ci additionsMap?: Map<string, string>; 208561847f8eSopenharmony_ci 208661847f8eSopenharmony_ci /** 208761847f8eSopenharmony_ci * Indicates the amount of additional descriptive information. 208861847f8eSopenharmony_ci * 208961847f8eSopenharmony_ci * @type { ?number } 209061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 209161847f8eSopenharmony_ci * @since 9 209261847f8eSopenharmony_ci */ 209361847f8eSopenharmony_ci /** 209461847f8eSopenharmony_ci * Indicates the amount of additional descriptive information. 209561847f8eSopenharmony_ci * 209661847f8eSopenharmony_ci * @type { ?number } 209761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 209861847f8eSopenharmony_ci * @atomicservice 209961847f8eSopenharmony_ci * @since 11 210061847f8eSopenharmony_ci */ 210161847f8eSopenharmony_ci additionSize?: number; 210261847f8eSopenharmony_ci 210361847f8eSopenharmony_ci /** 210461847f8eSopenharmony_ci * Indicates whether it is an mock location. 210561847f8eSopenharmony_ci * 210661847f8eSopenharmony_ci * @type { ?Boolean } 210761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 210861847f8eSopenharmony_ci * @systemapi 210961847f8eSopenharmony_ci * @since 9 211061847f8eSopenharmony_ci */ 211161847f8eSopenharmony_ci isFromMock?: Boolean; 211261847f8eSopenharmony_ci 211361847f8eSopenharmony_ci /** 211461847f8eSopenharmony_ci * Indicates vertical position accuracy in meters. 211561847f8eSopenharmony_ci * 211661847f8eSopenharmony_ci * @type { ?number } 211761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 211861847f8eSopenharmony_ci * @atomicservice 211961847f8eSopenharmony_ci * @since 12 212061847f8eSopenharmony_ci */ 212161847f8eSopenharmony_ci altitudeAccuracy?: number; 212261847f8eSopenharmony_ci 212361847f8eSopenharmony_ci /** 212461847f8eSopenharmony_ci * Indicates speed accuracy in meter per seconds. 212561847f8eSopenharmony_ci * 212661847f8eSopenharmony_ci * @type { ?number } 212761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 212861847f8eSopenharmony_ci * @atomicservice 212961847f8eSopenharmony_ci * @since 12 213061847f8eSopenharmony_ci */ 213161847f8eSopenharmony_ci speedAccuracy?: number; 213261847f8eSopenharmony_ci 213361847f8eSopenharmony_ci /** 213461847f8eSopenharmony_ci * Indicates direction accuracy in degrees. 213561847f8eSopenharmony_ci * 213661847f8eSopenharmony_ci * @type { ?number } 213761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 213861847f8eSopenharmony_ci * @atomicservice 213961847f8eSopenharmony_ci * @since 12 214061847f8eSopenharmony_ci */ 214161847f8eSopenharmony_ci directionAccuracy?: number; 214261847f8eSopenharmony_ci 214361847f8eSopenharmony_ci /** 214461847f8eSopenharmony_ci * Time uncertainty Of timeSinceBoot in nanosecond. 214561847f8eSopenharmony_ci * 214661847f8eSopenharmony_ci * @type { ?number } 214761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 214861847f8eSopenharmony_ci * @atomicservice 214961847f8eSopenharmony_ci * @since 12 215061847f8eSopenharmony_ci */ 215161847f8eSopenharmony_ci uncertaintyOfTimeSinceBoot?: number; 215261847f8eSopenharmony_ci 215361847f8eSopenharmony_ci /** 215461847f8eSopenharmony_ci * Indicates the source of the location. 215561847f8eSopenharmony_ci * 215661847f8eSopenharmony_ci * @type { ?LocationSourceType } 215761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 215861847f8eSopenharmony_ci * @atomicservice 215961847f8eSopenharmony_ci * @since 12 216061847f8eSopenharmony_ci */ 216161847f8eSopenharmony_ci sourceType?: LocationSourceType; 216261847f8eSopenharmony_ci } 216361847f8eSopenharmony_ci 216461847f8eSopenharmony_ci /** 216561847f8eSopenharmony_ci * Describes the request parameters for obtaining the data required for locating. 216661847f8eSopenharmony_ci * @typedef LocatingRequiredDataConfig 216761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 216861847f8eSopenharmony_ci * @systemapi 216961847f8eSopenharmony_ci * @since 10 217061847f8eSopenharmony_ci */ 217161847f8eSopenharmony_ci export interface LocatingRequiredDataConfig { 217261847f8eSopenharmony_ci /** 217361847f8eSopenharmony_ci * Indicates the type of locating required data. 217461847f8eSopenharmony_ci * 217561847f8eSopenharmony_ci * @type {LocatingRequiredDataType} 217661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 217761847f8eSopenharmony_ci * @systemapi 217861847f8eSopenharmony_ci * @since 10 217961847f8eSopenharmony_ci */ 218061847f8eSopenharmony_ci type: LocatingRequiredDataType; 218161847f8eSopenharmony_ci 218261847f8eSopenharmony_ci /** 218361847f8eSopenharmony_ci * Indicates whether to start scanning. 218461847f8eSopenharmony_ci * 218561847f8eSopenharmony_ci * @type {boolean} 218661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 218761847f8eSopenharmony_ci * @systemapi 218861847f8eSopenharmony_ci * @since 10 218961847f8eSopenharmony_ci */ 219061847f8eSopenharmony_ci needStartScan: boolean; 219161847f8eSopenharmony_ci 219261847f8eSopenharmony_ci /** 219361847f8eSopenharmony_ci * Indicates the interval between scans. The unit is millisecond. 219461847f8eSopenharmony_ci * This parameter needs to be set only when scanning information is continuously monitored. 219561847f8eSopenharmony_ci * 219661847f8eSopenharmony_ci * @type {?number} 219761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 219861847f8eSopenharmony_ci * @systemapi 219961847f8eSopenharmony_ci * @since 10 220061847f8eSopenharmony_ci */ 220161847f8eSopenharmony_ci scanInterval?: number; 220261847f8eSopenharmony_ci 220361847f8eSopenharmony_ci /** 220461847f8eSopenharmony_ci * Indicates the timeout period of a single scan. The unit is millisecond. The default value is 10000. 220561847f8eSopenharmony_ci * This parameter needs to be set only when getLocatingRequiredData is used. 220661847f8eSopenharmony_ci * 220761847f8eSopenharmony_ci * @type {?number} 220861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 220961847f8eSopenharmony_ci * @systemapi 221061847f8eSopenharmony_ci * @since 10 221161847f8eSopenharmony_ci */ 221261847f8eSopenharmony_ci scanTimeout?: number; 221361847f8eSopenharmony_ci } 221461847f8eSopenharmony_ci 221561847f8eSopenharmony_ci /** 221661847f8eSopenharmony_ci * Describes the structure of the data required for locating. 221761847f8eSopenharmony_ci * @typedef LocatingRequiredData 221861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 221961847f8eSopenharmony_ci * @systemapi 222061847f8eSopenharmony_ci * @since 10 222161847f8eSopenharmony_ci */ 222261847f8eSopenharmony_ci export interface LocatingRequiredData { 222361847f8eSopenharmony_ci /** 222461847f8eSopenharmony_ci * WiFi scan info. 222561847f8eSopenharmony_ci * 222661847f8eSopenharmony_ci * @type {?WifiScanInfo} 222761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 222861847f8eSopenharmony_ci * @systemapi 222961847f8eSopenharmony_ci * @since 10 223061847f8eSopenharmony_ci */ 223161847f8eSopenharmony_ci wifiData?: WifiScanInfo; 223261847f8eSopenharmony_ci 223361847f8eSopenharmony_ci /** 223461847f8eSopenharmony_ci * Bluetooth scan info. 223561847f8eSopenharmony_ci * 223661847f8eSopenharmony_ci * @type {?BluetoothScanInfo} 223761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 223861847f8eSopenharmony_ci * @systemapi 223961847f8eSopenharmony_ci * @since 10 224061847f8eSopenharmony_ci */ 224161847f8eSopenharmony_ci bluetoothData?: BluetoothScanInfo; 224261847f8eSopenharmony_ci } 224361847f8eSopenharmony_ci 224461847f8eSopenharmony_ci /** 224561847f8eSopenharmony_ci * Describes the scanned WiFi information. 224661847f8eSopenharmony_ci * @typedef WifiScanInfo 224761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 224861847f8eSopenharmony_ci * @systemapi 224961847f8eSopenharmony_ci * @since 10 225061847f8eSopenharmony_ci */ 225161847f8eSopenharmony_ci export interface WifiScanInfo { 225261847f8eSopenharmony_ci /** 225361847f8eSopenharmony_ci * WiFi SSID: the maximum length is 32. 225461847f8eSopenharmony_ci * 225561847f8eSopenharmony_ci * @type {string} 225661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 225761847f8eSopenharmony_ci * @systemapi 225861847f8eSopenharmony_ci * @since 10 225961847f8eSopenharmony_ci */ 226061847f8eSopenharmony_ci ssid: string; 226161847f8eSopenharmony_ci 226261847f8eSopenharmony_ci /** 226361847f8eSopenharmony_ci * WiFi bssid(MAC): the length is 6. 226461847f8eSopenharmony_ci * 226561847f8eSopenharmony_ci * @type {string} 226661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 226761847f8eSopenharmony_ci * @systemapi 226861847f8eSopenharmony_ci * @since 10 226961847f8eSopenharmony_ci */ 227061847f8eSopenharmony_ci bssid: string; 227161847f8eSopenharmony_ci 227261847f8eSopenharmony_ci /** 227361847f8eSopenharmony_ci * Received signal strength indicator (RSSI). 227461847f8eSopenharmony_ci * 227561847f8eSopenharmony_ci * @type {number} 227661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 227761847f8eSopenharmony_ci * @systemapi 227861847f8eSopenharmony_ci * @since 10 227961847f8eSopenharmony_ci */ 228061847f8eSopenharmony_ci rssi: number; 228161847f8eSopenharmony_ci 228261847f8eSopenharmony_ci /** 228361847f8eSopenharmony_ci * Frequency 228461847f8eSopenharmony_ci * 228561847f8eSopenharmony_ci * @type {number} 228661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 228761847f8eSopenharmony_ci * @systemapi 228861847f8eSopenharmony_ci * @since 10 228961847f8eSopenharmony_ci */ 229061847f8eSopenharmony_ci frequency: number; 229161847f8eSopenharmony_ci 229261847f8eSopenharmony_ci /** 229361847f8eSopenharmony_ci * Time stamp. 229461847f8eSopenharmony_ci * 229561847f8eSopenharmony_ci * @type {number} 229661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 229761847f8eSopenharmony_ci * @systemapi 229861847f8eSopenharmony_ci * @since 10 229961847f8eSopenharmony_ci */ 230061847f8eSopenharmony_ci timestamp: number; 230161847f8eSopenharmony_ci } 230261847f8eSopenharmony_ci 230361847f8eSopenharmony_ci /** 230461847f8eSopenharmony_ci * Describes the contents of the Bluetooth scan results. 230561847f8eSopenharmony_ci * 230661847f8eSopenharmony_ci * @typedef BluetoothScanInfo 230761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 230861847f8eSopenharmony_ci * @systemapi 230961847f8eSopenharmony_ci * @since 10 231061847f8eSopenharmony_ci */ 231161847f8eSopenharmony_ci export interface BluetoothScanInfo { 231261847f8eSopenharmony_ci /** 231361847f8eSopenharmony_ci * The local name of the device. 231461847f8eSopenharmony_ci * 231561847f8eSopenharmony_ci * @type {string} 231661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 231761847f8eSopenharmony_ci * @systemapi 231861847f8eSopenharmony_ci * @since 10 231961847f8eSopenharmony_ci */ 232061847f8eSopenharmony_ci deviceName: string; 232161847f8eSopenharmony_ci 232261847f8eSopenharmony_ci /** 232361847f8eSopenharmony_ci * Mac address of the scanned device. 232461847f8eSopenharmony_ci * 232561847f8eSopenharmony_ci * @type {string} 232661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 232761847f8eSopenharmony_ci * @systemapi 232861847f8eSopenharmony_ci * @since 10 232961847f8eSopenharmony_ci */ 233061847f8eSopenharmony_ci macAddress: string; 233161847f8eSopenharmony_ci 233261847f8eSopenharmony_ci /** 233361847f8eSopenharmony_ci * RSSI of the remote device. 233461847f8eSopenharmony_ci * 233561847f8eSopenharmony_ci * @type {number} 233661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 233761847f8eSopenharmony_ci * @systemapi 233861847f8eSopenharmony_ci * @since 10 233961847f8eSopenharmony_ci */ 234061847f8eSopenharmony_ci rssi: number; 234161847f8eSopenharmony_ci 234261847f8eSopenharmony_ci /** 234361847f8eSopenharmony_ci * Time stamp. 234461847f8eSopenharmony_ci * 234561847f8eSopenharmony_ci * @type {number} 234661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 234761847f8eSopenharmony_ci * @systemapi 234861847f8eSopenharmony_ci * @since 10 234961847f8eSopenharmony_ci */ 235061847f8eSopenharmony_ci timestamp: number; 235161847f8eSopenharmony_ci } 235261847f8eSopenharmony_ci 235361847f8eSopenharmony_ci /** 235461847f8eSopenharmony_ci * Enum for the source of the location. 235561847f8eSopenharmony_ci * 235661847f8eSopenharmony_ci * @enum { number } 235761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 235861847f8eSopenharmony_ci * @atomicservice 235961847f8eSopenharmony_ci * @since 12 236061847f8eSopenharmony_ci */ 236161847f8eSopenharmony_ci export enum LocationSourceType { 236261847f8eSopenharmony_ci /** 236361847f8eSopenharmony_ci * The location is obtained from the GNSS. 236461847f8eSopenharmony_ci * 236561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 236661847f8eSopenharmony_ci * @atomicservice 236761847f8eSopenharmony_ci * @since 12 236861847f8eSopenharmony_ci */ 236961847f8eSopenharmony_ci GNSS = 1, 237061847f8eSopenharmony_ci 237161847f8eSopenharmony_ci /** 237261847f8eSopenharmony_ci * The location comes from the network positioning technology. 237361847f8eSopenharmony_ci * 237461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 237561847f8eSopenharmony_ci * @atomicservice 237661847f8eSopenharmony_ci * @since 12 237761847f8eSopenharmony_ci */ 237861847f8eSopenharmony_ci NETWORK = 2, 237961847f8eSopenharmony_ci 238061847f8eSopenharmony_ci /** 238161847f8eSopenharmony_ci * The location comes from the indoor positioning technology. 238261847f8eSopenharmony_ci * 238361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 238461847f8eSopenharmony_ci * @atomicservice 238561847f8eSopenharmony_ci * @since 12 238661847f8eSopenharmony_ci */ 238761847f8eSopenharmony_ci INDOOR = 3, 238861847f8eSopenharmony_ci 238961847f8eSopenharmony_ci /** 239061847f8eSopenharmony_ci * The location comes from the GNSS RTK technology. 239161847f8eSopenharmony_ci * 239261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 239361847f8eSopenharmony_ci * @atomicservice 239461847f8eSopenharmony_ci * @since 12 239561847f8eSopenharmony_ci */ 239661847f8eSopenharmony_ci RTK = 4 239761847f8eSopenharmony_ci } 239861847f8eSopenharmony_ci 239961847f8eSopenharmony_ci /** 240061847f8eSopenharmony_ci * Enum for coordinate system type. 240161847f8eSopenharmony_ci * 240261847f8eSopenharmony_ci * @enum { number } 240361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 240461847f8eSopenharmony_ci * @since 12 240561847f8eSopenharmony_ci */ 240661847f8eSopenharmony_ci export enum CoordinateSystemType { 240761847f8eSopenharmony_ci /** 240861847f8eSopenharmony_ci * WGS84 coordinates system. 240961847f8eSopenharmony_ci * 241061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 241161847f8eSopenharmony_ci * @since 12 241261847f8eSopenharmony_ci */ 241361847f8eSopenharmony_ci WGS84 = 1, 241461847f8eSopenharmony_ci 241561847f8eSopenharmony_ci /** 241661847f8eSopenharmony_ci * GCJ-02 coordinates system. 241761847f8eSopenharmony_ci * 241861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 241961847f8eSopenharmony_ci * @since 12 242061847f8eSopenharmony_ci */ 242161847f8eSopenharmony_ci GCJ02 = 2 242261847f8eSopenharmony_ci } 242361847f8eSopenharmony_ci 242461847f8eSopenharmony_ci /** 242561847f8eSopenharmony_ci * Enum for location icon status. 242661847f8eSopenharmony_ci * 242761847f8eSopenharmony_ci * @enum { number } 242861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 242961847f8eSopenharmony_ci * @systemapi 243061847f8eSopenharmony_ci * @since 12 243161847f8eSopenharmony_ci */ 243261847f8eSopenharmony_ci export enum LocationIconStatus { 243361847f8eSopenharmony_ci /** 243461847f8eSopenharmony_ci * The locating service is not started. 243561847f8eSopenharmony_ci * 243661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 243761847f8eSopenharmony_ci * @systemapi 243861847f8eSopenharmony_ci * @since 12 243961847f8eSopenharmony_ci */ 244061847f8eSopenharmony_ci LOCATING_NOT_STARTED = 0, 244161847f8eSopenharmony_ci 244261847f8eSopenharmony_ci /** 244361847f8eSopenharmony_ci * The normal locating service is started. 244461847f8eSopenharmony_ci * 244561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 244661847f8eSopenharmony_ci * @systemapi 244761847f8eSopenharmony_ci * @since 12 244861847f8eSopenharmony_ci */ 244961847f8eSopenharmony_ci LOCATING_STARTED = 1, 245061847f8eSopenharmony_ci 245161847f8eSopenharmony_ci /** 245261847f8eSopenharmony_ci * The HD locating service(RTK) is started. 245361847f8eSopenharmony_ci * 245461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 245561847f8eSopenharmony_ci * @systemapi 245661847f8eSopenharmony_ci * @since 12 245761847f8eSopenharmony_ci */ 245861847f8eSopenharmony_ci HD_LOCATING_STARTED = 2 245961847f8eSopenharmony_ci } 246061847f8eSopenharmony_ci 246161847f8eSopenharmony_ci /** 246261847f8eSopenharmony_ci * Enum for location error code. 246361847f8eSopenharmony_ci * 246461847f8eSopenharmony_ci * @enum { number } 246561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 246661847f8eSopenharmony_ci * @atomicservice 246761847f8eSopenharmony_ci * @since 12 246861847f8eSopenharmony_ci */ 246961847f8eSopenharmony_ci export enum LocationError { 247061847f8eSopenharmony_ci /** 247161847f8eSopenharmony_ci * Default cause for location failure. 247261847f8eSopenharmony_ci * 247361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 247461847f8eSopenharmony_ci * @atomicservice 247561847f8eSopenharmony_ci * @since 12 247661847f8eSopenharmony_ci */ 247761847f8eSopenharmony_ci LOCATING_FAILED_DEFAULT = -1, 247861847f8eSopenharmony_ci 247961847f8eSopenharmony_ci /** 248061847f8eSopenharmony_ci * Locating failed because the location permission fails to be verified. 248161847f8eSopenharmony_ci * 248261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 248361847f8eSopenharmony_ci * @atomicservice 248461847f8eSopenharmony_ci * @since 12 248561847f8eSopenharmony_ci */ 248661847f8eSopenharmony_ci LOCATING_FAILED_LOCATION_PERMISSION_DENIED = -2, 248761847f8eSopenharmony_ci 248861847f8eSopenharmony_ci /** 248961847f8eSopenharmony_ci * Locating failed because the app is in the background and the background location permission verification failed. 249061847f8eSopenharmony_ci * 249161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 249261847f8eSopenharmony_ci * @atomicservice 249361847f8eSopenharmony_ci * @since 12 249461847f8eSopenharmony_ci */ 249561847f8eSopenharmony_ci LOCATING_FAILED_BACKGROUND_PERMISSION_DENIED = -3, 249661847f8eSopenharmony_ci 249761847f8eSopenharmony_ci /** 249861847f8eSopenharmony_ci * Locating failed because the location switch is turned off. 249961847f8eSopenharmony_ci * 250061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 250161847f8eSopenharmony_ci * @atomicservice 250261847f8eSopenharmony_ci * @since 12 250361847f8eSopenharmony_ci */ 250461847f8eSopenharmony_ci LOCATING_FAILED_LOCATION_SWITCH_OFF = -4, 250561847f8eSopenharmony_ci 250661847f8eSopenharmony_ci /** 250761847f8eSopenharmony_ci * Locating failed because internet access failure. 250861847f8eSopenharmony_ci * 250961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 251061847f8eSopenharmony_ci * @atomicservice 251161847f8eSopenharmony_ci * @since 12 251261847f8eSopenharmony_ci */ 251361847f8eSopenharmony_ci LOCATING_FAILED_INTERNET_ACCESS_FAILURE = -5 251461847f8eSopenharmony_ci } 251561847f8eSopenharmony_ci 251661847f8eSopenharmony_ci /** 251761847f8eSopenharmony_ci * Enum for geofence transition status. 251861847f8eSopenharmony_ci * 251961847f8eSopenharmony_ci * @enum { number } 252061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 252161847f8eSopenharmony_ci * @since 12 252261847f8eSopenharmony_ci */ 252361847f8eSopenharmony_ci export enum GeofenceTransitionEvent { 252461847f8eSopenharmony_ci /** 252561847f8eSopenharmony_ci * The device is within the geofence. 252661847f8eSopenharmony_ci * 252761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 252861847f8eSopenharmony_ci * @since 12 252961847f8eSopenharmony_ci */ 253061847f8eSopenharmony_ci GEOFENCE_TRANSITION_EVENT_ENTER = 1, 253161847f8eSopenharmony_ci 253261847f8eSopenharmony_ci /** 253361847f8eSopenharmony_ci * The device is out of the geofence. 253461847f8eSopenharmony_ci * 253561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 253661847f8eSopenharmony_ci * @since 12 253761847f8eSopenharmony_ci */ 253861847f8eSopenharmony_ci GEOFENCE_TRANSITION_EVENT_EXIT = 2, 253961847f8eSopenharmony_ci 254061847f8eSopenharmony_ci /** 254161847f8eSopenharmony_ci * The device is in the geographical fence for a period of time. 254261847f8eSopenharmony_ci * 254361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Geofence 254461847f8eSopenharmony_ci * @since 12 254561847f8eSopenharmony_ci */ 254661847f8eSopenharmony_ci GEOFENCE_TRANSITION_EVENT_DWELL = 4 254761847f8eSopenharmony_ci } 254861847f8eSopenharmony_ci 254961847f8eSopenharmony_ci /** 255061847f8eSopenharmony_ci * Enum for satellite constellation category. 255161847f8eSopenharmony_ci * 255261847f8eSopenharmony_ci * @enum { number } 255361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 255461847f8eSopenharmony_ci * @since 12 255561847f8eSopenharmony_ci */ 255661847f8eSopenharmony_ci export enum SatelliteConstellationCategory { 255761847f8eSopenharmony_ci /** 255861847f8eSopenharmony_ci * Invalid value. 255961847f8eSopenharmony_ci * 256061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 256161847f8eSopenharmony_ci * @since 12 256261847f8eSopenharmony_ci */ 256361847f8eSopenharmony_ci CONSTELLATION_CATEGORY_UNKNOWN = 0, 256461847f8eSopenharmony_ci 256561847f8eSopenharmony_ci /** 256661847f8eSopenharmony_ci * GPS. 256761847f8eSopenharmony_ci * 256861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 256961847f8eSopenharmony_ci * @since 12 257061847f8eSopenharmony_ci */ 257161847f8eSopenharmony_ci CONSTELLATION_CATEGORY_GPS = 1, 257261847f8eSopenharmony_ci 257361847f8eSopenharmony_ci /** 257461847f8eSopenharmony_ci * SBAS. 257561847f8eSopenharmony_ci * 257661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 257761847f8eSopenharmony_ci * @since 12 257861847f8eSopenharmony_ci */ 257961847f8eSopenharmony_ci CONSTELLATION_CATEGORY_SBAS = 2, 258061847f8eSopenharmony_ci 258161847f8eSopenharmony_ci /** 258261847f8eSopenharmony_ci * GLONASS. 258361847f8eSopenharmony_ci * 258461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 258561847f8eSopenharmony_ci * @since 12 258661847f8eSopenharmony_ci */ 258761847f8eSopenharmony_ci CONSTELLATION_CATEGORY_GLONASS = 3, 258861847f8eSopenharmony_ci 258961847f8eSopenharmony_ci /** 259061847f8eSopenharmony_ci * QZSS. 259161847f8eSopenharmony_ci * 259261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 259361847f8eSopenharmony_ci * @since 12 259461847f8eSopenharmony_ci */ 259561847f8eSopenharmony_ci CONSTELLATION_CATEGORY_QZSS = 4, 259661847f8eSopenharmony_ci 259761847f8eSopenharmony_ci /** 259861847f8eSopenharmony_ci * BEIDOU. 259961847f8eSopenharmony_ci * 260061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 260161847f8eSopenharmony_ci * @since 12 260261847f8eSopenharmony_ci */ 260361847f8eSopenharmony_ci CONSTELLATION_CATEGORY_BEIDOU = 5, 260461847f8eSopenharmony_ci 260561847f8eSopenharmony_ci /** 260661847f8eSopenharmony_ci * GALILEO. 260761847f8eSopenharmony_ci * 260861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 260961847f8eSopenharmony_ci * @since 12 261061847f8eSopenharmony_ci */ 261161847f8eSopenharmony_ci CONSTELLATION_CATEGORY_GALILEO = 6, 261261847f8eSopenharmony_ci 261361847f8eSopenharmony_ci /** 261461847f8eSopenharmony_ci * IRNSS. 261561847f8eSopenharmony_ci * 261661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 261761847f8eSopenharmony_ci * @since 12 261861847f8eSopenharmony_ci */ 261961847f8eSopenharmony_ci CONSTELLATION_CATEGORY_IRNSS = 7 262061847f8eSopenharmony_ci } 262161847f8eSopenharmony_ci 262261847f8eSopenharmony_ci /** 262361847f8eSopenharmony_ci * Enum for satellite additional information. 262461847f8eSopenharmony_ci * 262561847f8eSopenharmony_ci * @enum { number } 262661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 262761847f8eSopenharmony_ci * @since 12 262861847f8eSopenharmony_ci */ 262961847f8eSopenharmony_ci export enum SatelliteAdditionalInfo { 263061847f8eSopenharmony_ci /** 263161847f8eSopenharmony_ci * Default value. 263261847f8eSopenharmony_ci * 263361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 263461847f8eSopenharmony_ci * @since 12 263561847f8eSopenharmony_ci */ 263661847f8eSopenharmony_ci SATELLITES_ADDITIONAL_INFO_NULL = 0, 263761847f8eSopenharmony_ci 263861847f8eSopenharmony_ci /** 263961847f8eSopenharmony_ci * Ephemeris data exist. 264061847f8eSopenharmony_ci * 264161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 264261847f8eSopenharmony_ci * @since 12 264361847f8eSopenharmony_ci */ 264461847f8eSopenharmony_ci SATELLITES_ADDITIONAL_INFO_EPHEMERIS_DATA_EXIST = 1, 264561847f8eSopenharmony_ci 264661847f8eSopenharmony_ci /** 264761847f8eSopenharmony_ci * Almanac data exist. 264861847f8eSopenharmony_ci * 264961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 265061847f8eSopenharmony_ci * @since 12 265161847f8eSopenharmony_ci */ 265261847f8eSopenharmony_ci SATELLITES_ADDITIONAL_INFO_ALMANAC_DATA_EXIST = 2, 265361847f8eSopenharmony_ci 265461847f8eSopenharmony_ci /** 265561847f8eSopenharmony_ci * This satellite is being used in location fix. 265661847f8eSopenharmony_ci * 265761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 265861847f8eSopenharmony_ci * @since 12 265961847f8eSopenharmony_ci */ 266061847f8eSopenharmony_ci SATELLITES_ADDITIONAL_INFO_USED_IN_FIX = 4, 266161847f8eSopenharmony_ci 266261847f8eSopenharmony_ci /** 266361847f8eSopenharmony_ci * Carrier frequency exist. 266461847f8eSopenharmony_ci * 266561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Gnss 266661847f8eSopenharmony_ci * @since 12 266761847f8eSopenharmony_ci */ 266861847f8eSopenharmony_ci SATELLITES_ADDITIONAL_INFO_CARRIER_FREQUENCY_EXIST = 8 266961847f8eSopenharmony_ci } 267061847f8eSopenharmony_ci 267161847f8eSopenharmony_ci /** 267261847f8eSopenharmony_ci * Enum for user activity scenario. 267361847f8eSopenharmony_ci * 267461847f8eSopenharmony_ci * @enum { number } 267561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 267661847f8eSopenharmony_ci * @atomicservice 267761847f8eSopenharmony_ci * @since 12 267861847f8eSopenharmony_ci */ 267961847f8eSopenharmony_ci export enum UserActivityScenario { 268061847f8eSopenharmony_ci /** 268161847f8eSopenharmony_ci * Navigation scenario. High positioning precision and real-time performance are required. 268261847f8eSopenharmony_ci * 268361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 268461847f8eSopenharmony_ci * @atomicservice 268561847f8eSopenharmony_ci * @since 12 268661847f8eSopenharmony_ci */ 268761847f8eSopenharmony_ci NAVIGATION = 0x401, 268861847f8eSopenharmony_ci 268961847f8eSopenharmony_ci /** 269061847f8eSopenharmony_ci * Sport scenario. High positioning precision is required. 269161847f8eSopenharmony_ci * 269261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 269361847f8eSopenharmony_ci * @atomicservice 269461847f8eSopenharmony_ci * @since 12 269561847f8eSopenharmony_ci */ 269661847f8eSopenharmony_ci SPORT = 0x402, 269761847f8eSopenharmony_ci 269861847f8eSopenharmony_ci /** 269961847f8eSopenharmony_ci * Transport scenario. High positioning precision and real-time performance are required. 270061847f8eSopenharmony_ci * 270161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 270261847f8eSopenharmony_ci * @atomicservice 270361847f8eSopenharmony_ci * @since 12 270461847f8eSopenharmony_ci */ 270561847f8eSopenharmony_ci TRANSPORT = 0x403, 270661847f8eSopenharmony_ci 270761847f8eSopenharmony_ci /** 270861847f8eSopenharmony_ci * Daily life scenarios. Low requirements on positioning precision. 270961847f8eSopenharmony_ci * 271061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 271161847f8eSopenharmony_ci * @atomicservice 271261847f8eSopenharmony_ci * @since 12 271361847f8eSopenharmony_ci */ 271461847f8eSopenharmony_ci DAILY_LIFE_SERVICE = 0x404 271561847f8eSopenharmony_ci } 271661847f8eSopenharmony_ci 271761847f8eSopenharmony_ci /** 271861847f8eSopenharmony_ci * Enum for locating priority. 271961847f8eSopenharmony_ci * 272061847f8eSopenharmony_ci * @enum { number } 272161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 272261847f8eSopenharmony_ci * @atomicservice 272361847f8eSopenharmony_ci * @since 12 272461847f8eSopenharmony_ci */ 272561847f8eSopenharmony_ci export enum LocatingPriority { 272661847f8eSopenharmony_ci /** 272761847f8eSopenharmony_ci * Preferentially ensure the highest locating accuracy. 272861847f8eSopenharmony_ci * 272961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 273061847f8eSopenharmony_ci * @atomicservice 273161847f8eSopenharmony_ci * @since 12 273261847f8eSopenharmony_ci */ 273361847f8eSopenharmony_ci PRIORITY_ACCURACY = 0x501, 273461847f8eSopenharmony_ci 273561847f8eSopenharmony_ci /** 273661847f8eSopenharmony_ci * Preferentially ensure the fastest locating speed. 273761847f8eSopenharmony_ci * 273861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 273961847f8eSopenharmony_ci * @atomicservice 274061847f8eSopenharmony_ci * @since 12 274161847f8eSopenharmony_ci */ 274261847f8eSopenharmony_ci PRIORITY_LOCATING_SPEED = 0x502 274361847f8eSopenharmony_ci } 274461847f8eSopenharmony_ci 274561847f8eSopenharmony_ci /** 274661847f8eSopenharmony_ci * Enum for location priority. 274761847f8eSopenharmony_ci * 274861847f8eSopenharmony_ci * @enum { number } 274961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 275061847f8eSopenharmony_ci * @since 9 275161847f8eSopenharmony_ci */ 275261847f8eSopenharmony_ci /** 275361847f8eSopenharmony_ci * Enum for location priority. 275461847f8eSopenharmony_ci * 275561847f8eSopenharmony_ci * @enum { number } 275661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 275761847f8eSopenharmony_ci * @atomicservice 275861847f8eSopenharmony_ci * @since 11 275961847f8eSopenharmony_ci */ 276061847f8eSopenharmony_ci export enum LocationRequestPriority { 276161847f8eSopenharmony_ci /** 276261847f8eSopenharmony_ci * Default priority. 276361847f8eSopenharmony_ci * 276461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 276561847f8eSopenharmony_ci * @since 9 276661847f8eSopenharmony_ci */ 276761847f8eSopenharmony_ci /** 276861847f8eSopenharmony_ci * Default priority. 276961847f8eSopenharmony_ci * 277061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 277161847f8eSopenharmony_ci * @atomicservice 277261847f8eSopenharmony_ci * @since 11 277361847f8eSopenharmony_ci */ 277461847f8eSopenharmony_ci UNSET = 0x200, 277561847f8eSopenharmony_ci 277661847f8eSopenharmony_ci /** 277761847f8eSopenharmony_ci * Preferentially ensure the locating accuracy. 277861847f8eSopenharmony_ci * 277961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 278061847f8eSopenharmony_ci * @since 9 278161847f8eSopenharmony_ci */ 278261847f8eSopenharmony_ci /** 278361847f8eSopenharmony_ci * Preferentially ensure the locating accuracy. 278461847f8eSopenharmony_ci * 278561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 278661847f8eSopenharmony_ci * @atomicservice 278761847f8eSopenharmony_ci * @since 11 278861847f8eSopenharmony_ci */ 278961847f8eSopenharmony_ci ACCURACY, 279061847f8eSopenharmony_ci 279161847f8eSopenharmony_ci /** 279261847f8eSopenharmony_ci * Preferentially ensure low power consumption for locating. 279361847f8eSopenharmony_ci * 279461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 279561847f8eSopenharmony_ci * @since 9 279661847f8eSopenharmony_ci */ 279761847f8eSopenharmony_ci /** 279861847f8eSopenharmony_ci * Preferentially ensure low power consumption for locating. 279961847f8eSopenharmony_ci * 280061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 280161847f8eSopenharmony_ci * @atomicservice 280261847f8eSopenharmony_ci * @since 11 280361847f8eSopenharmony_ci */ 280461847f8eSopenharmony_ci LOW_POWER, 280561847f8eSopenharmony_ci 280661847f8eSopenharmony_ci /** 280761847f8eSopenharmony_ci * Preferentially ensure that the first location is time-consuming. 280861847f8eSopenharmony_ci * 280961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 281061847f8eSopenharmony_ci * @since 9 281161847f8eSopenharmony_ci */ 281261847f8eSopenharmony_ci /** 281361847f8eSopenharmony_ci * Preferentially ensure that the first location is time-consuming. 281461847f8eSopenharmony_ci * 281561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 281661847f8eSopenharmony_ci * @atomicservice 281761847f8eSopenharmony_ci * @since 11 281861847f8eSopenharmony_ci */ 281961847f8eSopenharmony_ci FIRST_FIX 282061847f8eSopenharmony_ci } 282161847f8eSopenharmony_ci 282261847f8eSopenharmony_ci /** 282361847f8eSopenharmony_ci * Enum for location scenario. 282461847f8eSopenharmony_ci * 282561847f8eSopenharmony_ci * @enum { number } 282661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 282761847f8eSopenharmony_ci * @since 9 282861847f8eSopenharmony_ci */ 282961847f8eSopenharmony_ci /** 283061847f8eSopenharmony_ci * Enum for location scenario. 283161847f8eSopenharmony_ci * 283261847f8eSopenharmony_ci * @enum { number } 283361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 283461847f8eSopenharmony_ci * @atomicservice 283561847f8eSopenharmony_ci * @since 11 283661847f8eSopenharmony_ci */ 283761847f8eSopenharmony_ci export enum LocationRequestScenario { 283861847f8eSopenharmony_ci /** 283961847f8eSopenharmony_ci * Default scenario. 284061847f8eSopenharmony_ci * 284161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 284261847f8eSopenharmony_ci * @since 9 284361847f8eSopenharmony_ci */ 284461847f8eSopenharmony_ci /** 284561847f8eSopenharmony_ci * Default scenario. 284661847f8eSopenharmony_ci * 284761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 284861847f8eSopenharmony_ci * @atomicservice 284961847f8eSopenharmony_ci * @since 11 285061847f8eSopenharmony_ci */ 285161847f8eSopenharmony_ci UNSET = 0x300, 285261847f8eSopenharmony_ci 285361847f8eSopenharmony_ci /** 285461847f8eSopenharmony_ci * Navigation scenario. High positioning precision and real-time performance are required. 285561847f8eSopenharmony_ci * 285661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 285761847f8eSopenharmony_ci * @since 9 285861847f8eSopenharmony_ci */ 285961847f8eSopenharmony_ci /** 286061847f8eSopenharmony_ci * Navigation scenario. High positioning precision and real-time performance are required. 286161847f8eSopenharmony_ci * 286261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 286361847f8eSopenharmony_ci * @atomicservice 286461847f8eSopenharmony_ci * @since 11 286561847f8eSopenharmony_ci */ 286661847f8eSopenharmony_ci NAVIGATION, 286761847f8eSopenharmony_ci 286861847f8eSopenharmony_ci /** 286961847f8eSopenharmony_ci * Trajectory tracking scenario. High positioning precision is required. 287061847f8eSopenharmony_ci * 287161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 287261847f8eSopenharmony_ci * @since 9 287361847f8eSopenharmony_ci */ 287461847f8eSopenharmony_ci /** 287561847f8eSopenharmony_ci * Trajectory tracking scenario. High positioning precision is required. 287661847f8eSopenharmony_ci * 287761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 287861847f8eSopenharmony_ci * @atomicservice 287961847f8eSopenharmony_ci * @since 11 288061847f8eSopenharmony_ci */ 288161847f8eSopenharmony_ci TRAJECTORY_TRACKING, 288261847f8eSopenharmony_ci 288361847f8eSopenharmony_ci /** 288461847f8eSopenharmony_ci * Car hailing scenario. High positioning precision and real-time performance are required. 288561847f8eSopenharmony_ci * 288661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 288761847f8eSopenharmony_ci * @since 9 288861847f8eSopenharmony_ci */ 288961847f8eSopenharmony_ci /** 289061847f8eSopenharmony_ci * Car hailing scenario. High positioning precision and real-time performance are required. 289161847f8eSopenharmony_ci * 289261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 289361847f8eSopenharmony_ci * @atomicservice 289461847f8eSopenharmony_ci * @since 11 289561847f8eSopenharmony_ci */ 289661847f8eSopenharmony_ci CAR_HAILING, 289761847f8eSopenharmony_ci 289861847f8eSopenharmony_ci /** 289961847f8eSopenharmony_ci * Daily life scenarios. Low requirements on positioning precision and real-time performance. 290061847f8eSopenharmony_ci * 290161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 290261847f8eSopenharmony_ci * @since 9 290361847f8eSopenharmony_ci */ 290461847f8eSopenharmony_ci /** 290561847f8eSopenharmony_ci * Daily life scenarios. Low requirements on positioning precision and real-time performance. 290661847f8eSopenharmony_ci * 290761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 290861847f8eSopenharmony_ci * @atomicservice 290961847f8eSopenharmony_ci * @since 11 291061847f8eSopenharmony_ci */ 291161847f8eSopenharmony_ci DAILY_LIFE_SERVICE, 291261847f8eSopenharmony_ci 291361847f8eSopenharmony_ci /** 291461847f8eSopenharmony_ci * Power saving scenarios. 291561847f8eSopenharmony_ci * 291661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 291761847f8eSopenharmony_ci * @since 9 291861847f8eSopenharmony_ci */ 291961847f8eSopenharmony_ci /** 292061847f8eSopenharmony_ci * Power saving scenarios. 292161847f8eSopenharmony_ci * 292261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 292361847f8eSopenharmony_ci * @atomicservice 292461847f8eSopenharmony_ci * @since 11 292561847f8eSopenharmony_ci */ 292661847f8eSopenharmony_ci NO_POWER 292761847f8eSopenharmony_ci } 292861847f8eSopenharmony_ci 292961847f8eSopenharmony_ci /** 293061847f8eSopenharmony_ci * Enum for power consumption scenario. 293161847f8eSopenharmony_ci * 293261847f8eSopenharmony_ci * @enum { number } 293361847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 293461847f8eSopenharmony_ci * @atomicservice 293561847f8eSopenharmony_ci * @since 12 293661847f8eSopenharmony_ci */ 293761847f8eSopenharmony_ci export enum PowerConsumptionScenario { 293861847f8eSopenharmony_ci /** 293961847f8eSopenharmony_ci * High power consumption mode. 294061847f8eSopenharmony_ci * 294161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 294261847f8eSopenharmony_ci * @atomicservice 294361847f8eSopenharmony_ci * @since 12 294461847f8eSopenharmony_ci */ 294561847f8eSopenharmony_ci HIGH_POWER_CONSUMPTION = 0x601, 294661847f8eSopenharmony_ci 294761847f8eSopenharmony_ci /** 294861847f8eSopenharmony_ci * Low power consumption mode. 294961847f8eSopenharmony_ci * 295061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 295161847f8eSopenharmony_ci * @atomicservice 295261847f8eSopenharmony_ci * @since 12 295361847f8eSopenharmony_ci */ 295461847f8eSopenharmony_ci LOW_POWER_CONSUMPTION = 0x602, 295561847f8eSopenharmony_ci 295661847f8eSopenharmony_ci /** 295761847f8eSopenharmony_ci * Power saving scenarios. 295861847f8eSopenharmony_ci * 295961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 296061847f8eSopenharmony_ci * @atomicservice 296161847f8eSopenharmony_ci * @since 12 296261847f8eSopenharmony_ci */ 296361847f8eSopenharmony_ci NO_POWER_CONSUMPTION = 0x603 296461847f8eSopenharmony_ci } 296561847f8eSopenharmony_ci 296661847f8eSopenharmony_ci /** 296761847f8eSopenharmony_ci * Enum for location privacy type. 296861847f8eSopenharmony_ci * 296961847f8eSopenharmony_ci * @enum { number } 297061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 297161847f8eSopenharmony_ci * @systemapi 297261847f8eSopenharmony_ci * @since 9 297361847f8eSopenharmony_ci */ 297461847f8eSopenharmony_ci export enum LocationPrivacyType { 297561847f8eSopenharmony_ci /** 297661847f8eSopenharmony_ci * Other scenarios. 297761847f8eSopenharmony_ci * 297861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 297961847f8eSopenharmony_ci * @systemapi 298061847f8eSopenharmony_ci * @since 9 298161847f8eSopenharmony_ci */ 298261847f8eSopenharmony_ci OTHERS = 0, 298361847f8eSopenharmony_ci 298461847f8eSopenharmony_ci /** 298561847f8eSopenharmony_ci * Privacy agreement for the startup wizard scenario. 298661847f8eSopenharmony_ci * 298761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 298861847f8eSopenharmony_ci * @systemapi 298961847f8eSopenharmony_ci * @since 9 299061847f8eSopenharmony_ci */ 299161847f8eSopenharmony_ci STARTUP, 299261847f8eSopenharmony_ci 299361847f8eSopenharmony_ci /** 299461847f8eSopenharmony_ci * Privacy agreement pop-up when network location is enabled. 299561847f8eSopenharmony_ci * 299661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 299761847f8eSopenharmony_ci * @systemapi 299861847f8eSopenharmony_ci * @since 9 299961847f8eSopenharmony_ci */ 300061847f8eSopenharmony_ci CORE_LOCATION 300161847f8eSopenharmony_ci } 300261847f8eSopenharmony_ci 300361847f8eSopenharmony_ci /** 300461847f8eSopenharmony_ci * Location subsystem command structure. 300561847f8eSopenharmony_ci * 300661847f8eSopenharmony_ci * @typedef LocationCommand 300761847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 300861847f8eSopenharmony_ci * @since 9 300961847f8eSopenharmony_ci */ 301061847f8eSopenharmony_ci export interface LocationCommand { 301161847f8eSopenharmony_ci /** 301261847f8eSopenharmony_ci * Information about the scenario where the command is sent. 301361847f8eSopenharmony_ci * 301461847f8eSopenharmony_ci * @type { LocationRequestScenario } 301561847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 301661847f8eSopenharmony_ci * @since 9 301761847f8eSopenharmony_ci */ 301861847f8eSopenharmony_ci scenario: LocationRequestScenario; 301961847f8eSopenharmony_ci 302061847f8eSopenharmony_ci /** 302161847f8eSopenharmony_ci * Sent command content. 302261847f8eSopenharmony_ci * 302361847f8eSopenharmony_ci * @type { string } 302461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 302561847f8eSopenharmony_ci * @since 9 302661847f8eSopenharmony_ci */ 302761847f8eSopenharmony_ci command: string; 302861847f8eSopenharmony_ci } 302961847f8eSopenharmony_ci 303061847f8eSopenharmony_ci /** 303161847f8eSopenharmony_ci * Country code structure. 303261847f8eSopenharmony_ci * 303361847f8eSopenharmony_ci * @typedef CountryCode 303461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 303561847f8eSopenharmony_ci * @since 9 303661847f8eSopenharmony_ci */ 303761847f8eSopenharmony_ci export interface CountryCode { 303861847f8eSopenharmony_ci /** 303961847f8eSopenharmony_ci * Country code character string. 304061847f8eSopenharmony_ci * 304161847f8eSopenharmony_ci * @type { string } 304261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 304361847f8eSopenharmony_ci * @since 9 304461847f8eSopenharmony_ci */ 304561847f8eSopenharmony_ci country: string; 304661847f8eSopenharmony_ci 304761847f8eSopenharmony_ci /** 304861847f8eSopenharmony_ci * Country code source. 304961847f8eSopenharmony_ci * 305061847f8eSopenharmony_ci * @type { CountryCodeType } 305161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 305261847f8eSopenharmony_ci * @since 9 305361847f8eSopenharmony_ci */ 305461847f8eSopenharmony_ci type: CountryCodeType; 305561847f8eSopenharmony_ci } 305661847f8eSopenharmony_ci 305761847f8eSopenharmony_ci /** 305861847f8eSopenharmony_ci * Enum for country code type. 305961847f8eSopenharmony_ci * 306061847f8eSopenharmony_ci * @enum { number } 306161847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 306261847f8eSopenharmony_ci * @since 9 306361847f8eSopenharmony_ci */ 306461847f8eSopenharmony_ci export enum CountryCodeType { 306561847f8eSopenharmony_ci /** 306661847f8eSopenharmony_ci * Country code obtained from the locale setting. 306761847f8eSopenharmony_ci * 306861847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 306961847f8eSopenharmony_ci * @since 9 307061847f8eSopenharmony_ci */ 307161847f8eSopenharmony_ci COUNTRY_CODE_FROM_LOCALE = 1, 307261847f8eSopenharmony_ci 307361847f8eSopenharmony_ci /** 307461847f8eSopenharmony_ci * Country code obtained from the SIM information. 307561847f8eSopenharmony_ci * 307661847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 307761847f8eSopenharmony_ci * @since 9 307861847f8eSopenharmony_ci */ 307961847f8eSopenharmony_ci COUNTRY_CODE_FROM_SIM, 308061847f8eSopenharmony_ci 308161847f8eSopenharmony_ci /** 308261847f8eSopenharmony_ci * Query the country code information from the reverse geocoding result. 308361847f8eSopenharmony_ci * 308461847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 308561847f8eSopenharmony_ci * @since 9 308661847f8eSopenharmony_ci */ 308761847f8eSopenharmony_ci COUNTRY_CODE_FROM_LOCATION, 308861847f8eSopenharmony_ci 308961847f8eSopenharmony_ci /** 309061847f8eSopenharmony_ci * Obtain the country code from the cell registration information. 309161847f8eSopenharmony_ci * 309261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 309361847f8eSopenharmony_ci * @since 9 309461847f8eSopenharmony_ci */ 309561847f8eSopenharmony_ci COUNTRY_CODE_FROM_NETWORK 309661847f8eSopenharmony_ci } 309761847f8eSopenharmony_ci 309861847f8eSopenharmony_ci /** 309961847f8eSopenharmony_ci * Enum for locating required data type. 310061847f8eSopenharmony_ci * 310161847f8eSopenharmony_ci * @enum { number } 310261847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 310361847f8eSopenharmony_ci * @systemapi 310461847f8eSopenharmony_ci * @since 10 310561847f8eSopenharmony_ci */ 310661847f8eSopenharmony_ci export enum LocatingRequiredDataType { 310761847f8eSopenharmony_ci /** 310861847f8eSopenharmony_ci * Obtains WiFi scanning information for locating. 310961847f8eSopenharmony_ci * 311061847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 311161847f8eSopenharmony_ci * @systemapi 311261847f8eSopenharmony_ci * @since 10 311361847f8eSopenharmony_ci */ 311461847f8eSopenharmony_ci WIFI = 1, 311561847f8eSopenharmony_ci 311661847f8eSopenharmony_ci /** 311761847f8eSopenharmony_ci * Obtains BT scanning information for locating. 311861847f8eSopenharmony_ci * 311961847f8eSopenharmony_ci * @syscap SystemCapability.Location.Location.Core 312061847f8eSopenharmony_ci * @systemapi 312161847f8eSopenharmony_ci * @since 10 312261847f8eSopenharmony_ci */ 312361847f8eSopenharmony_ci BLUETOOTH 312461847f8eSopenharmony_ci } 312561847f8eSopenharmony_ci} 312661847f8eSopenharmony_ci 312761847f8eSopenharmony_ciexport default geoLocationManager; 3128