衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

鴻蒙開發設備管理:ohos.geolocation 位置服務

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-07-01 16:37 ? 次閱讀

位置服務

icon-note.gif說明: 本模塊首批接口從API version 7開始支持。后續版本的新增接口,采用上角標單獨標記接口的起始版本。 開發前請熟悉鴻蒙開發指導文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]

導入模塊

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>) : 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>) : 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>) : void

調用逆地理編碼服務,將坐標轉換為地理描述,使用callback回調異步返回結果。

需要權限 :ohos.permission.LOCATION

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

  • 參數:

    參數名類型必填說明
    request[ReverseGeoCodeRequest]設置逆地理編碼請求的相關參數。
    callbackAsyncCallback>設置接收逆地理編碼請求的回調參數。
  • 示例:

    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>;

調用逆地理編碼服務,將坐標轉換為地理描述,使用Promise方式異步返回結果。

需要權限 :ohos.permission.LOCATION

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

  • 參數:

    參數名類型必填說明
    request[ReverseGeoCodeRequest]設置逆地理編碼請求的相關參數。
  • 返回值:

    參數名說明
    Promise>返回地理描述信息。
  • 示例:

    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>) : void

調用地理編碼服務,將地理描述轉換為具體坐標,使用callback回調異步返回結果。

需要權限 :ohos.permission.LOCATION

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

  • 參數:

    參數名類型必填說明
    request[GeoCodeRequest]設置地理編碼請求的相關參數。
    callbackAsyncCallback>設置接收地理編碼請求的回調參數。
  • 示例:

    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>

調用地理編碼服務,將地理描述轉換為具體坐標,使用Promise方式異步返回結果。

需要權限 :ohos.permission.LOCATION

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

  • 參數:

    參數名類型必填說明
    request[GeoCodeRequest]設置地理編碼請求的相關參數。
  • 返回值:

    參數名說明
    Promise>設置接收地理編碼請求的回調參數。
  • 示例:

    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擴展命令字符串。HarmonyOSOpenHarmony鴻蒙文檔籽料:mau123789是v直接拿

新文檔.png

Location

位置信息類型。

需要權限 :ohos.permission.LOCATION

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

名稱參數類型必填說明
latitudenumber表示緯度信息,正值表示北緯,負值表示南緯。
longitudenumber表示經度信息,正值表示東經,負值表是西經。
altitudenumber表示高度信息,單位米。
accuracynumber表示精度信息,單位米。
speednumber表示速度信息,單位米每秒。
timeStampnumber表示位置時間戳,UTC格式。
directionnumber表示航向信息。
timeSinceBootnumber表示位置時間戳,開機時間格式。
additionsArray附加信息。
additionSizenumber附加信息數量。

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 設備管理
    +關注

    關注

    0

    文章

    120

    瀏覽量

    9342
  • 鴻蒙
    +關注

    關注

    57

    文章

    2392

    瀏覽量

    43050
收藏 人收藏

    評論

    相關推薦

    鴻蒙原生應用元服務開發-Web管理位置權限

    Web組件提供位置權限管理能力。開發者可以通過onGeolocationShow()接口對某個網站進行位置權限管理。Web組件根據接口響應結
    發表于 04-28 16:57

    鴻蒙原生應用元服務開發-位置服務地理編碼轉化開發

    說明如下。 開發步驟 說明 GeoConvert需要訪問后端服務,請確保設備聯網,以進行信息獲取。 導入geoLocationManager模塊,所有與(逆)地理編碼轉化能力相關的功能API,都是通過該
    發表于 06-12 17:22

    鴻蒙原生應用元服務開發-位置服務獲取設備信息開發

    LocationRequest對象,用于告知系統該向應用提供何種類型的位置服務,以及位置結果上報的頻率。 方式一: 為了面向開發者提供貼近其使用場景的API使用方式,系統定義了幾種常見的位置
    發表于 06-14 14:46

    鴻蒙原生應用元服務開發-位置服務開發概述

    位置能力可以提供實時準確的位置數據。對于開發者,設計基于位置體驗的服務,也可以使應用的使用體驗更貼近每個用戶。 當應用在實現基于
    發表于 06-17 17:47

    鴻蒙原生應用元服務開發-位置服務申請權限

    申請位置權限開發指導 場景概述 應用在使用位置服務系統能力前,需要檢查是否已經獲取用戶授權訪問設備位置信息。如未獲得授權,可以向用戶申請需要
    發表于 06-18 15:27

    HarmonyOS/OpenHarmony應用開發-ArkTSAPI系統能力SystemCapability

    開發者可通過import的方式將模塊導入,若當前設備不支持該模塊,import的結果為undefined,開發者在使用API時,需要判斷其是否存在。 import geolocation
    發表于 08-10 16:39

    鴻蒙生態千帆起】HarmonyOS系統級地圖與位置服務,賦能廣大開發

    設備接續、無縫流轉。! 未來,HarmonyOS系統級地圖與位置服務將深入更多行業場景,為開發者提供更多更有競爭力的產品及解決方案。
    發表于 11-22 10:37

    HarmonyOS 設備管理開發:USB 服務開發指導

    基本概念 USB 服務是應用訪問底層的一種設備抽象概念。開發者根據提供的 USB API,可以獲取設備列表、控制設備訪問權限、以及與連接的
    發表于 11-24 15:22

    HarmonyOS位置服務開發指南

    位置服務開發概述 移動終端設備已經深入人們日常生活的方方面面,如查看所在城市的天氣、新聞軼事、出行打車、旅行導航、運動記錄。這些習以為常的活動,都離不開定位用戶終端設備
    發表于 11-27 16:02

    基于位置服務中用戶信息安全保護方法

    基于位置服務中用戶信息安全保護方法....
    發表于 01-04 15:31 ?6次下載

    藍牙位置服務如今已有了非常廣泛的應用

    要知道藍牙位置服務是增長最快的解決方案領域,據《2020藍牙市場最新資訊》報告預測,至2024年,全球范圍內藍牙實時定位系統( RTLS )將達到100萬;整體藍牙位置服務設備年出貨量將高達5.38億,較2019年增長4倍。
    的頭像 發表于 07-15 11:36 ?3044次閱讀

    鴻蒙開發接口定制管理:【@ohos.enterpriseDeviceManager (企業設備管理)】

    以異步方法根據給定的包名和類名激活設備管理員應用,使用Callback形式返回是否激活成功。
    的頭像 發表于 06-05 09:24 ?595次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發</b>接口定制<b class='flag-5'>管理</b>:【@<b class='flag-5'>ohos</b>.enterpriseDeviceManager (企業<b class='flag-5'>設備管理</b>)】

    鴻蒙開發設備管理ohos.multimodalInput.inputDevice 輸入設備

    輸入設備管理模塊,用于監聽輸入設備連接、斷開和變化,并查看輸入設備相關信息。比如監聽鼠標插拔,并獲取鼠標的id、name和指針移動速度等信息。
    的頭像 發表于 07-01 09:19 ?497次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發</b><b class='flag-5'>設備管理</b>:<b class='flag-5'>ohos</b>.multimodalInput.inputDevice 輸入<b class='flag-5'>設備</b>

    鴻蒙開發設備管理ohos.usb USB管理

    本模塊主要提供管理USB設備的相關功能,包括查詢USB設備列表、批量數據傳輸、控制命令傳輸、權限控制等。
    的頭像 發表于 07-05 17:34 ?844次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發</b><b class='flag-5'>設備管理</b>:<b class='flag-5'>ohos</b>.usb USB<b class='flag-5'>管理</b>

    設備管理流程優化的優勢

    設備管理對企業生產效率、產品質量、成本控制和安全生產起著關鍵作用。但設備管理面臨挑戰,如種類繁多、數量龐大、位置分散等。因此,企業應采用科學的設備管理方法,建立
    的頭像 發表于 09-05 10:34 ?401次閱讀
    <b class='flag-5'>設備管理</b>流程優化的優勢
    百家乐官网扑克牌耙| 凱旋門百家乐娱乐城| 广州百家乐桌子| 布加迪百家乐的玩法技巧和规则 | 大发888送钱58元| 鸿利国际| 百家乐官网编单短信接收| 百家乐官网赢输| 百家乐好多假网站| 打百家乐最好办法| 大发888体育投注| 百家乐官网拍是什么| 澳门百家乐官网会出老千吗| 百家乐官网平注法到| 哪家百家乐最好| 乐透乐博彩论坛3d| 爱赢百家乐官网开户送现金| 百家乐官网网开服表| 真人百家乐蓝盾赌场娱乐网规则| 澳门顶级赌场手机在线登陆| 百家乐官网人生信条漫谈| 百家乐官网软件| 澳门百家乐群代理| 福海县| 澳门百家乐官网官网站| 安桌百家乐游戏百家乐| 大发娱乐城888| 百家乐官网高额投注| 百家乐大路小路| 大发888 ber娱乐场下载| 百家乐官网游戏分析| 百家乐视频官网| 大发888娱乐城真人视讯服务| 百家乐官网佣金计算| 百家乐官网园百乐彩| 大发888网站是多少呢| 遂溪县| 永利百家乐游戏| 大发888 迅雷下载| 百家乐官网洗码| 百家乐注册平台排名|