鸿蒙开发设备管理:【@ohos.geolocation (位置服务)】

news2024/12/23 8:44:58

位置服务

icon-note.gif 说明: 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

import geolocation from '@ohos.geolocation';

geolocation.on(‘locationChange’)

on(type: ‘locationChange’, request: LocationRequest, callback: Callback) : void

开启位置变化订阅,并发起定位请求。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 参数:

    参数名类型必填说明
    typestring设置事件类型。type为“locationChange”,表示位置变化。
    requestLocationRequest设置位置请求参数。
    callbackCallback<[Location]>接收位置变化状态变化监听。
  • 示例:

    var requestInfo = {'priority': 0x203, 'scenario': 0x300, 'timeInterval': 0, 'distanceInterval': 0, 'maxAccuracy': 0};
    var locationChange = (location) => {
        console.log('locationChanger: data: ' + JSON.stringify(location));
    };
    geolocation.on('locationChange', requestInfo, locationChange);
    

geolocation.off(‘locationChange’)

off(type: ‘locationChange’, callback?: Callback) : void

关闭位置变化订阅,并删除对应的定位请求。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 参数:

    参数名类型必填说明
    typestring设置事件类型。type为“locationChange”,表示位置变化。
    callbackCallback<[Location]>接收位置变化状态变化监听。
  • 示例:

    var requestInfo = {'priority': 0x203, 'scenario': 0x300, 'timeInterval': 0, 'distanceInterval': 0, 'maxAccuracy': 0};
    var locationChange = (location) => {
        console.log('locationChanger: data: ' + JSON.stringify(location));
    };
    geolocation.on('locationChange', requestInfo, locationChange);
    geolocation.off('locationChange', locationChange);
    

geolocation.on(‘locationServiceState’)

on(type: ‘locationServiceState’, callback: Callback) : void

订阅位置服务状态变化。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 参数:

    参数名类型必填说明
    typestring设置事件类型。type为“locationServiceState”,表示位置服务状态。
    callbackCallback接收位置服务状态变化监听。
  • 示例:

    var locationServiceState = (state) => {
        console.log('locationServiceState: ' + state);
    }
    geolocation.on('locationServiceState', locationServiceState);
    

geolocation.off(‘locationServiceState’)

off(type: ‘locationServiceState’, callback?: Callback) : void;

取消订阅位置服务状态变化。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 参数:

    参数名类型必填说明
    typestring设置事件类型。type为“locationServiceState”,表示位置服务状态。
    callbackCallback接收位置服务状态变化监听。
  • 示例:

    var locationServiceState = (state) => {
        console.log('locationServiceState: state: ' + state);
    }
    geolocation.on('locationServiceState', locationServiceState);
    geolocation.off('locationServiceState', locationServiceState);
    

geolocation.on(‘cachedGnssLocationsReporting’)8+

on(type: ‘cachedGnssLocationsReporting’, request: CachedGnssLocationsRequest, callback: Callback<Array>) : void;

订阅缓存GNSS定位结果上报事件。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Gnss

  • 参数:

    参数名类型必填说明
    typestring设置事件类型。type为“cachedGnssLocationsReporting”,表示GNSS缓存定位结果上报。
    requestCachedGnssLocationsRequestGNSS缓存功能配置参数
    callbackCallback接收GNSS缓存位置上报。
  • 示例:

    var cachedLocationsCb = (locations) => {
        console.log('cachedGnssLocationsReporting: locations: ' + locations);
    }
    var requestInfo = {'reportingPeriodSec': 10, 'wakeUpCacheQueueFull': true};
    geolocation.on('cachedGnssLocationsReporting', requestInfo, cachedLocationsCb);
    

geolocation.off(‘cachedGnssLocationsReporting’)8+

off(type: ‘cachedGnssLocationsReporting’, callback?: Callback<Array>) : void;

取消订阅缓存GNSS定位结果上报事件。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Gnss

  • 参数:

    参数名类型必填说明
    typestring设置事件类型。type为“cachedGnssLocationsReporting”,表示GNSS缓存定位结果上报。
    callbackCallback接收GNSS缓存位置上报。
  • 示例:

    var cachedLocationsCb = (locations) => {
        console.log('cachedGnssLocationsReporting: locations: ' + locations);
    }
    var requestInfo = {'reportingPeriodSec': 10, 'wakeUpCacheQueueFull': true};
    geolocation.on('cachedGnssLocationsReporting', requestInfo, cachedLocationsCb);
    geolocation.off('cachedGnssLocationsReporting');
    

geolocation.on(‘gnssStatusChange’)8+

on(type: ‘gnssStatusChange’, callback: Callback) : void;

订阅GNSS卫星状态信息上报事件。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Gnss

  • 参数:

    参数名类型必填说明
    typestring设置事件类型。type为“gnssStatusChange”,表示订阅GNSS卫星状态信息上报。
    callbackCallback接收GNSS卫星状态信息上报。
  • 示例:

    var gnssStatusCb = (satelliteStatusInfo) => {
        console.log('gnssStatusChange: ' + satelliteStatusInfo);
    }
    geolocation.on('gnssStatusChange', gnssStatusCb);
    

geolocation.off(‘gnssStatusChange’)8+

off(type: ‘gnssStatusChange’, callback?: Callback) : void;

取消订阅GNSS卫星状态信息上报事件。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Gnss

  • 参数:

    参数名类型必填说明
    typestring设置事件类型。type为“gnssStatusChange”,表示订阅GNSS卫星状态信息上报。
    callbackCallback接收GNSS卫星状态信息上报。
  • 示例:

    var gnssStatusCb = (satelliteStatusInfo) => {
        console.log('gnssStatusChange: ' + satelliteStatusInfo);
    }
    geolocation.on('gnssStatusChange', gnssStatusCb);
    geolocation.off('gnssStatusChange', gnssStatusCb);
    

geolocation.on(‘nmeaMessageChange’)8+

on(type: ‘nmeaMessageChange’, callback: Callback) : void;

订阅GNSS NMEA信息上报事件。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Gnss

  • 参数:

    参数名类型必填说明
    typestring设置事件类型。type为“nmeaMessageChange”,表示订阅GNSS NMEA信息上报。
    callbackCallback接收GNSS NMEA信息上报。
  • 示例:

    var nmeaCb = (str) => {
        console.log('nmeaMessageChange: ' + str);
    }
    geolocation.on('nmeaMessageChange', nmeaCb );
    

geolocation.off(‘nmeaMessageChange’)8+

off(type: ‘nmeaMessageChange’, callback?: Callback) : void;

取消订阅GNSS NMEA信息上报事件。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Gnss

  • 参数:

    参数名类型必填说明
    typestring设置事件类型。type为“nmeaMessageChange”,表示订阅GNSS NMEA信息上报。
    callbackCallback接收GNSS NMEA信息上报。
  • 示例:

    var nmeaCb = (str) => {
        console.log('nmeaMessageChange: ' + str);
    }
    geolocation.on('nmeaMessageChange', nmeaCb);
    geolocation.off('nmeaMessageChange', nmeaCb);
    

geolocation.on(‘fenceStatusChange’)8+

on(type: ‘fenceStatusChange’, request: GeofenceRequest, want: WantAgent) : void;

添加一个围栏,并订阅地理围栏事件。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Geofence

  • 参数:

    参数名类型必填说明
    typestring设置事件类型。type为“fenceStatusChange”,表示订阅围栏事件上报。
    requestGeofenceRequest围栏的配置参数。
    wantWantAgent用于接收地理围栏事件上报(进出围栏)。
  • 示例:

    import WantAgent from '@ohos.wantAgent';
    import { OperationType, WantAgentFlags } from '@ohos.wantagent';
    //wantAgent对象
    var wantAgent;
    //getWantAgent回调
    function getWantAgentCallback(err, data) {
    	console.info("==========================>getWantAgentCallback=======================>");
        if (err.code == 0) {
    	wantAgent = data;
        } else {
            console.info('----getWantAgent failed!----');
        }
    }
    //WantAgentInfo对象
    var wantAgentInfo = {
        wants: [
            {
                deviceId: "deviceId",
                bundleName: "com.neu.setResultOnAbilityResultTest1",
                abilityName: "com.example.test.MainAbility",
                action: "action1",
                entities: ["entity1"],
                type: "MIMETYPE",
                uri: "key={true,true,false}",
                parameters:
                {
                    mykey0: 2222,
                    mykey1: [1, 2, 3],
                    mykey2: "[1, 2, 3]",
                    mykey3: "ssssssssssssssssssssssssss",
                    mykey4: [false, true, false],
                    mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
                    mykey6: true,
                }
            }
        ],
        operationType: OperationType.START_ABILITIES,
        requestCode: 0,
        wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
    }
    WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
    var requestInfo = {'priority': 0x201, 'scenario': 0x301, "geofence": {"latitude": 121, "longitude": 26, "radius": 100, "expiration": 10000}};
    geolocation.on('fenceStatusChange', requestInfo, wantAgent);
    

geolocation.off(‘fenceStatusChange’)8+

off(type: ‘fenceStatusChange’, request: GeofenceRequest, want: WantAgent) : void;

删除一个围栏,并取消订阅该围栏事件。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Geofence

  • 参数:

    参数名类型必填说明
    typestring设置事件类型。type为“fenceStatusChange”,表示订阅围栏事件上报。
    requestGeofenceRequest围栏的配置参数。
    wantWantAgent用于接收地理围栏事件上报(进出围栏)。
  • 示例:

    import WantAgent from '@ohos.wantAgent';
    import { OperationType, WantAgentFlags } from '@ohos.wantagent';
    //wantAgent对象
    var wantAgent;
    //getWantAgent回调
    function getWantAgentCallback(err, data) {
    	console.info("==========================>getWantAgentCallback=======================>");
        if (err.code == 0) {
    	wantAgent = data;
        } else {
            console.info('----getWantAgent failed!----');
        }
    }
    //WantAgentInfo对象
    var wantAgentInfo = {
        wants: [
            {
                deviceId: "deviceId",
                bundleName: "com.neu.setResultOnAbilityResultTest1",
                abilityName: "com.example.test.MainAbility",
                action: "action1",
                entities: ["entity1"],
                type: "MIMETYPE",
                uri: "key={true,true,false}",
                parameters:
                {
                    mykey0: 2222,
                    mykey1: [1, 2, 3],
                    mykey2: "[1, 2, 3]",
                    mykey3: "ssssssssssssssssssssssssss",
                    mykey4: [false, true, false],
                    mykey5: ["qqqqq", "wwwwww", "aaaaaaaaaaaaaaaaa"],
                    mykey6: true,
                }
            }
        ],
        operationType: OperationType.START_ABILITIES,
        requestCode: 0,
        wantAgentFlags:[WantAgentFlags.UPDATE_PRESENT_FLAG]
    }
    WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback)
    var requestInfo = {'priority': 0x201, 'scenario': 0x301, "geofence": {"latitude": 121, "longitude": 26, "radius": 100, "expiration": 10000}};
    geolocation.on('fenceStatusChange', requestInfo, wantAgent);
    geolocation.off('fenceStatusChange', requestInfo, wantAgent);
    

geolocation.getCurrentLocation

getCurrentLocation(request: CurrentLocationRequest, callback: AsyncCallback) : void

获取当前位置,使用callback回调异步返回结果。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 参数:

    参数名类型必填说明
    request[CurrentLocationRequest]设置位置请求参数。
    callbackAsyncCallback<[Location]>用来接收位置信息的回调。
  • 示例:

    var requestInfo = {'priority': 0x203, 'scenario': 0x300,'maxAccuracy': 0};
    var locationChange = (err, location) => {
        console.log('locationChanger: ' + err + 'data: ' + location);
    };
    geolocation.getCurrentLocation(requestInfo, locationChange);
    geolocation.getCurrentLocation(locationChange);
    

geolocation.getCurrentLocation

getCurrentLocation(request?: CurrentLocationRequest) : Promise

获取当前位置,使用Promise方式异步返回结果。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 参数:

    参数名类型必填说明
    request[CurrentLocationRequest]设置位置请求参数。
  • 返回值:

    参数名说明
    Promise<[Location]>返回位置信息。
  • 示例:

    var requestInfo = {'priority': 0x203, 'scenario': 0x300,'maxAccuracy': 0};
    locationEventListener.getCurrentLocation(requestInfo).then((result) => {
        console.log('current location: ' + JSON.stringify(result));
    });
    

geolocation.getLastLocation

getLastLocation(callback: AsyncCallback) : void

获取上一次位置,使用callback回调异步返回结果。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 参数:

    参数名类型必填说明
    callbackAsyncCallback<[Location]>用来接收上次位置的回调。
  • 示例:

    geolocation.getLastLocation((err, data) => {
        console.log('getLastLocation: ' + err + " data: " + JSON.stringify(data));
    });
    

geolocation.getLastLocation

getLastLocation() : Promise

获取上一次位置,使用Promise方式异步返回结果。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 返回值:

    参数名说明
    Promise<[Location]>返回上次位置信息。
  • 示例:

    geolocation.getLastLocation().then((result) => {
        console.log('getLastLocation: result: ' + JSON.stringify(result));
    });
    

geolocation.isLocationEnabled

isLocationEnabled(callback: AsyncCallback) : void

判断位置服务是否已经打开,使用callback回调异步返回结果。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 参数:

    参数名类型必填说明
    callbackAsyncCallback用来接收位置服务状态的回调。
  • 示例:

    geolocation.isLocationEnabled((err, data) => {
        console.log('isLocationEnabled: ' + err + " data: " + data);
    });
    

geolocation.isLocationEnabled

isLocationEnabled() : Promise

判断位置服务是否已经开启,使用Promise方式异步返回结果。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 返回值:

    参数名说明
    Promise返回位置服务是否可用的状态。
  • 示例:

    geolocation.isLocationEnabled().then((result) => {
        console.log('promise, isLocationEnabled: ' + result);
    });
    

geolocation.requestEnableLocation

requestEnableLocation(callback: AsyncCallback) : void

请求打开位置服务,使用callback回调异步返回结果。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 参数:

    参数名类型必填说明
    callbackAsyncCallback用来接收位置服务状态的回调。
  • 示例:

    geolocation.requestEnableLocation((err, data) => {
        console.log('requestEnableLocation: ' + err + " data: " + data);
    });
    

geolocation.requestEnableLocation

requestEnableLocation() : Promise

请求打开位置服务,使用Promise方式异步返回结果。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 返回值:

    参数名说明
    Promise返回位置服务是否可用。
  • 示例:

    geolocation.requestEnableLocation().then((result) => {
        console.log('promise, requestEnableLocation: ' + result);
    });
    

geolocation.enableLocation

enableLocation(callback: AsyncCallback) : void;

打开位置服务,使用callback回调异步返回结果。

系统API:此接口为系统接口,三方应用不支持调用。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 参数:

    参数名类型必填说明
    callbackAsyncCallback用来接收位置服务状态的回调。
  • 示例:

    geolocation.enableLocation((err, data) => {
        console.log('enableLocation: ' + err + " data: " + data);
    });
    

geolocation.enableLocation

enableLocation() : Promise

打开位置服务,使用Promise方式异步返回结果。

系统API:此接口为系统接口,三方应用不支持调用。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 返回值:

    参数名说明
    Promise返回位置服务是否可用。
  • 示例:

    geolocation.enableLocation().then((result) => {
        console.log('promise, enableLocation: ' + result);
    });
    

geolocation.disableLocation

disableLocation(callback: AsyncCallback) : void;

打开位置服务,使用callback回调异步返回结果。

系统API:此接口为系统接口,三方应用不支持调用。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 参数:

    参数名类型必填说明
    callbackAsyncCallback用来接收位置服务状态的回调。
  • 示例:

    geolocation.disableLocation((err, data) => {
        console.log('disableLocation: ' + err + " data: " + data);
    });
    

geolocation.disableLocation

disableLocation() : Promise

打开位置服务,使用Promise方式异步返回结果。

系统API:此接口为系统接口,三方应用不支持调用。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 返回值:

    参数名说明
    Promise返回位置服务是否可用。
  • 示例:

    geolocation.disableLocation().then((result) => {
        console.log('promise, disableLocation: ' + result);
    });
    

geolocation.isGeoServiceAvailable

isGeoServiceAvailable(callback: AsyncCallback) : void

判断(逆)地理编码服务状态,使用callback回调异步返回结果。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Geocoder

  • 参数:

    参数名类型必填说明
    callbackAsyncCallback用来接收地理编码服务状态的回调。
  • 示例:

    geolocation.isGeoServiceAvailable((err, data) => {
        console.log('isGeoServiceAvailable: ' + err + " data: " + data);
    });
    

geolocation.isGeoServiceAvailable

isGeoServiceAvailable() : Promise

判断(逆)地理编码服务状态,使用Promise方式异步返回结果。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Geocoder

  • 返回值:

    参数名说明
    Promise返回地理编码服务是否可用的状态。
  • 示例:

    geolocation.isGeoServiceAvailable().then((result) => {
        console.log('promise, isGeoServiceAvailable: ' + result);
    });
    

geolocation.getAddressesFromLocation

getAddressesFromLocation(request: ReverseGeoCodeRequest, callback: AsyncCallback<Array>) : void

调用逆地理编码服务,将坐标转换为地理描述,使用callback回调异步返回结果。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Geocoder

  • 参数:

    参数名类型必填说明
    request[ReverseGeoCodeRequest]设置逆地理编码请求的相关参数。
    callbackAsyncCallback<Array<[GeoAddress]>>设置接收逆地理编码请求的回调参数。
  • 示例:

    var reverseGeocodeRequest = {"latitude": 31.12, "longitude": 121.11, "maxItems": 1};
    geolocation.getAddressesFromLocation(reverseGeocodeRequest, (err, data) => {
        console.log('getAddressesFromLocation: ' + err + " data: " + JSON.stringify(data));
    });
    

geolocation.getAddressesFromLocation

getAddressesFromLocation(request: ReverseGeoCodeRequest) : Promise<Array>;

调用逆地理编码服务,将坐标转换为地理描述,使用Promise方式异步返回结果。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Geocoder

  • 参数:

    参数名类型必填说明
    request[ReverseGeoCodeRequest]设置逆地理编码请求的相关参数。
  • 返回值:

    参数名说明
    Promise<Array<[GeoAddress]>>返回地理描述信息。
  • 示例:

    var reverseGeocodeRequest = {"latitude": 31.12, "longitude": 121.11, "maxItems": 1};
    geolocation.getAddressesFromLocation(reverseGeocodeRequest).then((data) => {
        console.log('getAddressesFromLocation: ' + JSON.stringify(data));
    });
    

geolocation.getAddressesFromLocationName

getAddressesFromLocationName(request: GeoCodeRequest, callback: AsyncCallback<Array>) : void

调用地理编码服务,将地理描述转换为具体坐标,使用callback回调异步返回结果。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Geocoder

  • 参数:

    参数名类型必填说明
    request[GeoCodeRequest]设置地理编码请求的相关参数。
    callbackAsyncCallback<Array<[GeoAddress])>>设置接收地理编码请求的回调参数。
  • 示例:

    var geocodeRequest = {"description": "上海市浦东新区xx路xx号", "maxItems": 1};
    geolocation.getAddressesFromLocationName(geocodeRequest, (err, data) => {
        console.log('getAddressesFromLocationName: ' + err + " data: " + JSON.stringify(data));
    });
    

geolocation.getAddressesFromLocationName

getAddressesFromLocationName(request: GeoCodeRequest) : Promise<Array>

调用地理编码服务,将地理描述转换为具体坐标,使用Promise方式异步返回结果。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Geocoder

  • 参数:

    参数名类型必填说明
    request[GeoCodeRequest]设置地理编码请求的相关参数。
  • 返回值:

    参数名说明
    Promise<Array<[GeoAddress]>>设置接收地理编码请求的回调参数。
  • 示例:

    var geocodeRequest = {"description": "上海市浦东新区xx路xx号", "maxItems": 1};
    geolocation.getAddressesFromLocationName(geocodeRequest).then((result) => {
        console.log('getAddressesFromLocationName: ' + JSON.stringify(result));
    });
    

geolocation.getCachedGnssLocationsSize8+

getCachedGnssLocationsSize(callback: AsyncCallback) : void;

获取GNSS芯片缓存位置的个数。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Gnss

  • 参数:

    参数名类型必填说明
    callbackAsyncCallback用来接收GNSS芯片缓存位置个数的回调。
  • 示例:

    geolocation.getCachedGnssLocationsSize((err, size) => {
        console.log('getCachedGnssLocationsSize: err:' + err + " size: " + size);
    });
    

geolocation.getCachedGnssLocationsSize8+

getCachedGnssLocationsSize() : Promise;

获取GNSS芯片缓存位置的个数。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Gnss

  • 返回值:

    参数名说明
    Promise返回GNSS缓存位置的个数。
  • 示例:

    geolocation.getCachedGnssLocationsSize().then((result) => {
        console.log('promise, getCachedGnssLocationsSize: ' + result);
    });
    

geolocation.flushCachedGnssLocations8+

flushCachedGnssLocations(callback: AsyncCallback) : void;

读取并清空GNSS芯片所有缓存位置。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Gnss

  • 参数:

    参数名类型必填说明
    callbackAsyncCallback用来接收清空GNSS芯片缓存位置操作的结果。
  • 示例:

    geolocation.flushCachedGnssLocations((err, result) => {
        console.log('flushCachedGnssLocations: err:' + err + " result: " + result);
    });
    

geolocation.flushCachedGnssLocations8+

flushCachedGnssLocations() : Promise;

读取并清空GNSS芯片所有缓存位置。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Gnss

  • 返回值:

    参数名说明
    Promise清空所有GNSS缓存位置是否成功。
  • 示例:

    geolocation.flushCachedGnssLocations().then((result) => {
        console.log('promise, flushCachedGnssLocations: ' + result);
    });
    

geolocation.sendCommand8+

sendCommand(command: LocationCommand, callback: AsyncCallback) : void;

给位置服务子系统的各个部件发送扩展命令。只有系统应用才能调用。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 参数:

    参数名类型必填说明
    commandLocationCommand指定目标场景,和将要发送的命令(字符串)。
    callbackAsyncCallback用来接收命令发送的结果。
  • 示例:

    var requestInfo = {'scenario': 0x301, 'command': "command_1"};
    geolocation.sendCommand(requestInfo, (err, result) => {
        console.log('sendCommand: err:' + err + " result: " + result);
    });
    

geolocation.sendCommand8+

sendCommand(command: LocationCommand) : Promise;

给位置服务子系统的各个部件发送扩展命令。只有系统应用才能调用。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 参数:

    参数名类型必填说明
    commandLocationCommand指定目标场景,和将要发送的命令(字符串)。
  • 返回值:

    参数名说明
    Promise表示命令发送成功或失败。
  • 示例:

    var requestInfo = {'scenario': 0x301, 'command': "command_1"};
    geolocation.sendCommand(requestInfo).then((result) => {
        console.log('promise, sendCommand: ' + result);
    });
    

geolocation.isLocationPrivacyConfirmed8+

isLocationPrivacyConfirmed(type : LocationPrivacyType, callback: AsyncCallback) : void;

查询用户是否同意定位服务隐私申明,是否同意启用定位服务。只有系统应用才能调用。

系统API:此接口为系统接口,三方应用不支持调用。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 参数:

    参数名类型必填说明
    typeLocationPrivacyType指定隐私申明场景,例如开机向导中的隐私申明、开启网络定位功能时弹出的隐私申明等。
    callbackAsyncCallback表示用户是否同意定位服务隐私申明。
  • 示例:

    geolocation.isLocationPrivacyConfirmed(1, (err, result) => {
        console.log('isLocationPrivacyConfirmed: err:' + err + " result: " + result);
    });
    

geolocation.isLocationPrivacyConfirmed8+

isLocationPrivacyConfirmed(type : LocationPrivacyType,) : Promise;

查询用户是否同意定位服务隐私申明,是否同意启用定位服务。只有系统应用才能调用。

系统API:此接口为系统接口,三方应用不支持调用。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 参数:

    参数名类型必填说明
    typeLocationPrivacyType指定隐私申明场景,例如开机向导中的隐私申明、开启网络定位功能时弹出的隐私申明等。
  • 返回值:

    参数名说明
    Promise表示用户是否同意定位服务隐私申明。
  • 示例:

    geolocation.isLocationPrivacyConfirmed(1).then((result) => {
        console.log('promise, isLocationPrivacyConfirmed: ' + result);
    });
    

geolocation.setLocationPrivacyConfirmStatus8+

setLocationPrivacyConfirmStatus(type : LocationPrivacyType, isConfirmed: boolean, callback: AsyncCallback) : void;

设置用户勾选定位服务隐私申明的状态,记录用户是否同意启用定位服务。只有系统应用才能调用。

系统API:此接口为系统接口,三方应用不支持调用。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 参数:

    参数名类型必填说明
    typeLocationPrivacyType指定隐私申明场景,例如开机向导中的隐私申明、开启网络定位功能时弹出的隐私申明等。
    isConfirmedboolean表示用户是否同意定位服务隐私申明。
    callbackAsyncCallback表示操作是否成功。
  • 示例:

    geolocation.setLocationPrivacyConfirmStatus(1, true, (err, result) => {
        console.log('isLocationPrivacyConfirmed: err:' + err + " result: " + result);
    });
    

geolocation.setLocationPrivacyConfirmStatus8+

setLocationPrivacyConfirmStatus(type : LocationPrivacyType, isConfirmed : boolean) : Promise;

设置用户勾选定位服务隐私申明的状态,记录用户是否同意启用定位服务。只有系统应用才能调用。

系统API:此接口为系统接口,三方应用不支持调用。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

  • 参数:

    参数名类型必填说明
    typeLocationPrivacyType指定隐私申明场景,例如开机向导中的隐私申明、开启网络定位功能时弹出的隐私申明等。
    isConfirmedboolean表示用户是否同意定位服务隐私申明。
  • 返回值:

    参数名说明
    Promise表示操作是否成功。
  • 示例:

    geolocation.setLocationPrivacyConfirmStatus(1, true).then((result) => {
        console.log('promise, setLocationPrivacyConfirmStatus: ' + result);
    });
    

LocationRequestPriority

位置请求中位置信息优先级设置。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

名称默认值说明
UNSET0x200表示未设置优先级。
ACCURACY0x201表示精度优先。
LOW_POWER0x202表示低功耗优先。
FIRST_FIX0x203表示快速获取位置优先,如果应用希望快速拿到1个位置,可以将优先级设置为该字段。

LocationRequestScenario

位置请求中定位场景设置。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

名称默认值说明
UNSET0x300表示未设置场景信息。
NAVIGATION0x301表示导航场景。
TRAJECTORY_TRACKING0x302表示运动轨迹记录场景。
CAR_HAILING0x303表示打车场景。
DAILY_LIFE_SERVICE0x304表示日常服务使用场景。
NO_POWER0x305表示无功耗功场景,这种场景下不会主动触发定位,会在其他应用定位时,才给当前应用返回位置。

GeoLocationErrorCode

位置服务中的错误码信息。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

名称默认值说明
INPUT_PARAMS_ERROR101表示输入参数错误。
REVERSE_GEOCODE_ERROR102表示逆地理编码接口调用失败。
GEOCODE_ERROR103表示地理编码接口调用失败。
LOCATOR_ERROR104表示定位失败。
LOCATION_SWITCH_ERROR105表示定位开关。
LAST_KNOWN_LOCATION_ERROR106表示获取上次位置失败。
LOCATION_REQUEST_TIMEOUT_ERROR107表示单次定位,没有在指定时间内返回位置。

ReverseGeoCodeRequest

逆地理编码请求接口。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Geocoder

名称参数类型必填说明
localestring指定位置描述信息的语言,“zh”代表中文,“en”代表英文。
latitudenumber表示纬度信息,正值表示北纬,负值表示南纬。
longitudenumber表示经度信息,正值表示东经,负值表示西经。
maxItemsnumber指定返回位置信息的最大个数。

GeoCodeRequest

地理编码请求接口。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Geocoder

名称参数类型必填说明
localestring表示位置描述信息的语言,“zh”代表中文,“en”代表英文。
descriptionnumber表示位置信息描述,如“上海市浦东新区xx路xx号”。
maxItemsnumber表示返回位置信息的最大个数。
minLatitudenumber表示最小纬度信息,与下面三个参数一起,表示一个经纬度范围。
minLongitudenumber表示最小经度信息。
maxLatitudenumber表示最大纬度信息。
maxLongitudenumber表示最大经度信息。

GeoAddress

地理编码类型。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Geocoder

名称参数类型必填说明
latitudenumber表示纬度信息,正值表示北纬,负值表示南纬。
longitudenumber表示经度信息,正值表示东经,负值表是西经。
localestring表示位置描述信息的语言,“zh”代表中文,“en”代表英文。
placeNamestring表示地区信息。
countryCodestring表示国家码信息。
countryNamestring表示国家信息。
administrativeAreastring表示省份区域信息。
subAdministrativeAreastring表示表示子区域信息。
localitystring表示城市信息。
subLocalitystring表示子城市信息。
roadNamestring表示路名信息。
subRoadNamestring表示子路名信息。
premisesstring表示门牌号信息。
postalCodestring表示邮政编码信息。
phoneNumberstring表示联系方式信息。
addressUrlstring表示位置信息附件的网址信息。
descriptionsArray表示附加的描述信息。
descriptionsSizenumber表示附加的描述信息数量。

LocationRequest

位置信息请求类型。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

名称参数类型必填说明
priority[LocationRequestPriority]表示优先级信息。
scenario[LocationRequestScenario]表示场景信息。
timeIntervalnumber表示上报位置信息的时间间隔。
distanceIntervalnumber表示上报位置信息的距离间隔。
maxAccuracynumber表示精度信息。

CurrentLocationRequest

当前位置信息请求类型。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

名称参数类型必填说明
priority[LocationRequestPriority]表示优先级信息。
scenario[LocationRequestScenario]表示场景信息。
maxAccuracynumber表示精度信息,单位是米。
timeoutMsnumber表示超时时间,单位是毫秒,最小为1000毫秒。

SatelliteStatusInfo8+

卫星状态信息。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Gnss

名称参数类型必填说明
satellitesNumbernumber表示卫星个数。
satelliteIdsArray表示每个卫星的ID,数组类型。
carrierToNoiseDensitysArray表示载波噪声功率谱密度比,即cn0。
altitudesArray表示高程信息。
azimuthsArray表示方位角。
carrierFrequenciesArray表示载波频率。

CachedGnssLocationsRequest8+

请求订阅GNSS缓存位置上报功能接口的配置参数。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Gnss

名称参数类型必填说明
reportingPeriodSecnumber表示GNSS缓存位置上报的周期,单位是毫秒。
wakeUpCacheQueueFullbooleantrue表示GNSS芯片底层缓存队列满之后会主动唤醒AP芯片,并把缓存位置上报给应用。 false表示GNSS芯片底层缓存队列满之后不会主动唤醒AP芯片,会把缓存位置直接丢弃。

Geofence8+

GNSS围栏的配置参数。目前只支持圆形围栏。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Geofence

名称参数类型必填说明
latitudenumber表示纬度。
longitudenumber表示经度。
radiusnumber表示圆形围栏的半径。
expirationnumber围栏存活的时间,单位是毫秒。

GeofenceRequest8+

请求添加GNSS围栏消息中携带的参数,包括定位优先级、定位场景和围栏信息。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Geofence

名称参数类型必填说明
priorityLocationRequestPriority表示位置信息优先级。
scenarioLocationRequestScenario表示定位场景。
geofenceGeofence表示围栏信息。

LocationPrivacyType8+

定位服务隐私协议类型。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

名称默认值说明
OTHERS0其他场景。
STARTUP1开机向导场景下的隐私协议。
CORE_LOCATION2开启网络定位时弹出的隐私协议。

LocationCommand8+

扩展命令结构体。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

名称参数类型必填说明
scenarioLocationRequestScenario表示定位场景。
commandstring扩展命令字符串。

Location

在这里插入图片描述

位置信息类型。

需要权限:ohos.permission.LOCATION

系统能力:SystemCapability.Location.Location.Core

名称参数类型必填说明
latitudenumber表示纬度信息,正值表示北纬,负值表示南纬。
longitudenumber表示经度信息,正值表示东经,负值表是西经。
altitudenumber表示高度信息,单位米。
accuracynumber表示精度信息,单位米。
speednumber表示速度信息,单位米每秒。
timeStampnumber表示位置时间戳,UTC格式。
directionnumber表示航向信息。
timeSinceBootnumber表示位置时间戳,开机时间格式。
additionsArray附加信息。
additionSizenumber附加信息数量。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1878318.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Red Hat】 Red Hat 系统提示未注册订阅管理,并进行阿里yum源更新的解决方案

目录 &#x1f30a;1. 问题说明 &#x1f30a;2. 解决方案 &#x1f30d;2.1 Redhat 官网注册与订阅 &#x1f30d;2.2 Redhat 登录已订阅账号 &#x1f30d;2.3 更换 Redhat 为阿里yum源 &#x1f30d;2.4 验证 &#x1f30a;1. 问题说明 使用 yum makecache 或 yum up…

生命在于学习——Python人工智能原理(2.3.4)

三、Python的数据类型 3.2 Python的组合数据类型 3.2.4 字典-映射类型 映射类型是键-值数据项的组合&#xff0c;每一个元素都是一个键-值对&#xff0c;即元素是&#xff08;key&#xff0c;value&#xff09;&#xff0c;元素之间是无序的&#xff0c;键-值对&#xff08;…

STM32CUBEMX配置USB虚拟串口

STM32CUBEMX配置USB虚拟串口 cubemx上默认配置即可。 外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传 配置完后生成工程&#xff0c;主要就是要知道串口的收发接口就行了。 发送&#xff1a;CDC_Transmit_FS()&#xff0c;同时记得包含头文件#include “…

大数据可视化实验(六)——ECharts与pyecharts数据可视化

目录 一、实验目的... 1 二、实验环境... 1 三、实验内容... 1 1、ECharts可视化制作.. 1 1&#xff09;使用ECharts绘制折线图显示一周的天气变换。... 1 2&#xff09;使用ECharts绘制柱状图显示商品销量的变化。... 4 2、pyecharts可视化制作.. 7 1&#xff09;使用…

Webpack: 深入理解图像加载原理与最佳实践

概述 图形图像资源是当代 Web 应用的最常用、实惠的内容、装饰元素之一&#xff0c;但在 Webpack 出现之前对图像资源的处理复杂度特别高&#xff0c;需要借助一系列工具(甚至 Photoshop)完成压缩、雪碧图、hash、部署等操作。 而在 Webpack 中&#xff0c;图像以及其它多媒体…

前端Web开发HTML5+CSS3+移动web视频教程 Day3 CSS 第1天

P29 - P43 从此开始进入 CSS 的学习。前面都是 HTML 的学习。 CSS 的作用&#xff1a;美化。 HTML 只是规定了网页内容有哪些&#xff0c;在网页中显示的位置默认是从上到下显示&#xff0c;还带有默认效果&#xff0c;比如超链接有颜色有下划线&#xff0c;无序列表有小圆点…

【算法训练记录——Day37】

Day37——贪心Ⅴ 1.leetcode_56合并区间 1.leetcode_56合并区间 思路&#xff1a;排序&#xff0c;如果重叠&#xff0c;更新right 为max(right, curVal), 不重叠就加入res,需要单独考虑最后一次&#xff0c;因为每次都是在下一次遍历开始时判断是否加入res&#xff0c;因此 当…

平衡二叉搜索树/AVL树

VAL树的特性 左右子树高度差的绝对值不超过1。&#xff08;即左右子树高度差取值为-1&#xff0c;0&#xff0c;1&#xff09;且左右子树均为VAL树右子树的值大于左子树的值 在搜索二叉树中我们提及了搜索二叉树的退化问题。 当有序&#xff08;升序或降序&#xff09;地插入…

人工智能类SCI,1区TOP,3个月可录!

今天给大家推荐一本人工智能类SCIE领域的SCI&#xff0c;此期刊为我处目前合作的重点期刊&#xff01;影响因子7.0-8.0之间&#xff0c;JCR1区&#xff0c;中科院2/1区&#xff08;TOP&#xff09;&#xff0c;最重要的是审稿周期较短&#xff0c;对急投的学者较为友好&#xf…

MATLAB-振动问题:两自由度耦合系统自由振动

一、基本理论 二、MATLAB实现 以下是两自由度耦合系统自由振动质量块振动过程动画显示的MATLAB程序。 clear; clc; close allx0 1; D1 40; D12 8; D2 D1; m1 1; omega0 sqrt(D1/m1); k1 D12 / D1; k2 D12 / D2; k sqrt(k1 * k2); omegazh omega0 * sqrt(1 k); omeg…

SpringBoot使用Spark的DataFrame API

什么是Spark&#xff1f; Apache Spark是一个开源的分布式计算系统&#xff0c;它提供了一个快速和通用的集群计算平台。Spark 能够处理大规模数据&#xff0c;支持多种编程语言&#xff0c;如Scala、Java和Python&#xff0c;并且具有多种高级功能&#xff0c;包括SQL查询、机…

基于51单片机的密码锁Proteus仿真

文章目录 一、密码锁1.题目要求2.思路3.仿真图3.1 未仿真时3.2 初始界面3.3 输入密码界面3.4 开锁成功界面3.5 修改密码界面3.6 输入密码错误界面 4.仿真程序4.1 矩阵按键4.2 液晶显示16024.3 存储模块2402 二、总结 一、密码锁 1.题目要求 以51单片机为核心&#xff0c;设计…

【原创实现 设计模式】Spring+策略+模版+工厂模式去掉if-else,实现开闭原则,优雅扩展

1 定义与优点 1.1 定义 策略模式&#xff08;Strategy Pattern&#xff09;属于对象的⾏为模式。他主要是用于针对同一个抽象行为&#xff0c;在程序运行时根据客户端不同的参数或者上下文&#xff0c;动态的选择不同的具体实现方式&#xff0c;即类的行为可以在运行时更改。…

C++:静态断言内存对齐

静态断言 C中的断言assert (1)直接参考&#xff1a;https://www.cnblogs.com/lvchaoshun/p/7816288.html (2)C的assert是运行时检测发现错误&#xff0c;而不是编译时 (3)C在编译时错误用#error来输出C静态断言 (1)C引入static_assert(表达式, “提示字符串”)来实现编译时的静…

[数据集][目标检测]婴儿状态睡觉哭泣检测数据集VOC+YOLO格式7109张3类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;7109 标注数量(xml文件个数)&#xff1a;7109 标注数量(txt文件个数)&#xff1a;7109 标注…

【MySQL基础篇】SQL指令:DQL及DCL

1、DQL DQL - 介绍 DQL英文全称是Data Query Language(数据查询语言)&#xff0c;数据查询语言&#xff0c;用来查询数据表中的记录。&#xff08;在MySQL中应用是最为广泛的&#xff09; 查询关键字&#xff1a;SELECT DQL - 语法 SELECT 字段列表 FROM 表名列表 WHER…

代码随想录算法训练营第四十七天| 188.买卖股票的最佳时机IV ,309.最佳买卖股票时机含冷冻期 ,714.买卖股票的最佳时机含手续费

188. 买卖股票的最佳时机 IV - 力扣&#xff08;LeetCode&#xff09; class Solution {public int maxProfit(int k, int[] prices) {int[][] dp new int[prices.length][2*k];for(int i0;i<2*k;i){if(i%2 0){dp[0][i] -prices[0];}else{dp[0][i] 0;} }for(int i1;i…

LeetCode题练习与总结:环形链表Ⅱ--142

一、题目描述 给定一个链表的头节点 head &#xff0c;返回链表开始入环的第一个节点。 如果链表无环&#xff0c;则返回 null。 如果链表中有某个节点&#xff0c;可以通过连续跟踪 next 指针再次到达&#xff0c;则链表中存在环。 为了表示给定链表中的环&#xff0c;评测…

C语言 | Leetcode C语言题解之第206题反转链表

题目&#xff1a; 题解&#xff1a; struct ListNode* reverseList(struct ListNode* head) {if (head NULL || head->next NULL) {return head;}struct ListNode* newHead reverseList(head->next);head->next->next head;head->next NULL;return newHea…

Camera Raw:增强

Camera Raw 中的增强 Enhance命令基于 AI 技术提升图像的质量&#xff0c;可用于降噪、生成清晰的细节以及提高图像的分辨率。 ◆ ◆ ◆ 主要用途 1、高 ISO 图像降噪 勾选“去杂色” Denoise&#xff0c;可轻松消除使用高 ISO 设置或在低光环境下拍摄的照片中的噪点。 可以对…