鸿蒙语言基础类库:【@system.geolocation (地理位置)】

地理位置

说明:

  • 从API Version 7 开始,该接口不再维护,推荐使用新接口`@ohos.geolocation`
  • 本模块首批接口从API version 3开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

复制代码
import geolocation from '@system.geolocation';

权限列表

ohos.permission.LOCATION

geolocation.getLocation

getLocation(Object): void

获取设备的地理位置。

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

参数:

参数名 类型 必填 说明
timeout number 超时时间,单位为ms,默认值为30000。 设置超时,是为了防止出现权限被系统拒绝、定位信号弱或者定位设置不当,导致请求阻塞的情况。超时后会使用fail回调函数。 取值范围为32位正整数。如果设置值小于等于0,系统按默认值处理。
coordType string 坐标系的类型,可通过getSupportedCoordTypes获取可选值,缺省值为wgs84。
success Function 接口调用成功的回调函数。
fail Function 接口调用失败的回调函数。
complete Function 接口调用结束的回调函数。

success返回值:

参数名 类型 说明
longitude number 设备位置信息:经度。
latitude number 设备位置信息:纬度。
altitude number 设备位置信息:海拔。
accuracy number 设备位置信息:精确度。
time number 设备位置信息:时间。

fail返回错误代码:

错误码 说明
601 获取定位权限失败,失败原因:用户拒绝。
602 权限未声明。
800 超时,失败原因:网络状况不佳或GPS不可用。
801 系统位置开关未打开。
802 该次调用结果未返回前接口又被重新调用,该次调用失败返回错误码。

示例:

复制代码
export default {    
  getLocation() {        
    geolocation.getLocation({            
      success: function(data) {                
        console.log('success get location data. latitude:' + data.latitude);            
      },            
      fail: function(data, code) {                
        console.log('fail to get location. code:' + code + ', data:' + data);            
      },
    });    
  },
}

geolocation.getLocationType

getLocationType(Object): void

获取当前设备支持的定位类型。

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

参数:

参数名 类型 必填 说明
success Function 接口调用成功的回调函数。
fail Function 接口调用失败的回调函数。
complete Function 接口调用结束的回调函数。

success返回值:

参数名 类型 说明
types Array 可选的定位类型'gps', 'network'

示例:

复制代码
export default {    
  getLocationType() {        
    geolocation.getLocationType({            
      success: function(data) {                
        console.log('success get location type:' + data.types[0]);            
      },            
      fail: function(data, code) {                
        console.log('fail to get location. code:' + code + ', data:' + data);            
       },        
     });    
  },
}

geolocation.subscribe

subscribe(Object): void

订阅设备的地理位置信息。多次调用的话,只有最后一次的调用生效。

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

参数:

参数名 类型 必填 说明
coordType string 坐标系的类型,可通过getSupportedCoordTypes获取可选值,默认值为wgs84。
success Function 位置信息发生变化的回调函数。
fail Function 接口调用失败的回调函数。

success返回值:

参数名 类型 说明
longitude number 设备位置信息:经度。
latitude number 设备位置信息:纬度。
altitude number 设备位置信息:海拔。
accuracy number 设备位置信息:精确度。
time number 设备位置信息:时间。

fail返回错误代码:

错误码 说明
601 获取定位权限失败,失败原因:用户拒绝。
602 权限未声明。
801 系统位置开关未打开。

示例:

复制代码
export default {    
  subscribe() {        
    geolocation.subscribe({            
      success: function(data) {                
        console.log('get location. latitude:' + data.latitude);            
      },            
      fail: function(data, code) {                
        console.log('fail to get location. code:' + code + ', data:' + data);            
      },        
    });    
  },
}

geolocation.unsubscribe

unsubscribe(): void

取消订阅设备的地理位置信息。

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

示例:

复制代码
export default {    
  unsubscribe() {        
    geolocation.unsubscribe();    
  },
}

geolocation.getSupportedCoordTypes

getSupportedCoordTypes(): Array

获取设备支持的坐标系类型。

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

返回值:

类型 非空 说明 HarmonyOS与OpenHarmony鸿蒙文档籽料在结尾
Array 表示坐标系类型,如wgs84, gcj02

示例:

复制代码
export default {    
  getSupportedCoordTypes() {       
    var types = geolocation.getSupportedCoordTypes();    
  },
}
相关推荐
用户0934077735144 分钟前
HarmonyOS WPS Open SDK 实践:OpenFileRequest 打开链路与沙箱拷贝
android·typescript·harmonyos
木子雨廷1 小时前
第 01 天|心智模型:iOS/Flutter 开发者学鸿蒙,第一步该换什么思路?
harmonyos
谢文峰1 小时前
从 Domain Workload 到垂直领域 Agent
程序员
刻意思考1 小时前
任务领域边界问题的定义
程序员
SimonKing2 小时前
手机投屏到电脑,不用装任何 App,这个开源工具免费搞定:QtScrcpy
java·后端·程序员
lilian2332 小时前
HarmonyOS 7 新特性(二十一)|FAST Kit:自然排序与向量计算
华为·harmonyos
tsqtsqtsq03092 小时前
鸿蒙系统 Call Service Kit 功能详解与开发适配指南
华为·harmonyos
贾伟康3 小时前
【时光清单|17】HarmonyOS ArkTS 亮暗色与视觉令牌实战:集中颜色、间距和交互状态避免页面割裂
harmonyos·arkts·arkui·深色模式·设计系统
贾伟康3 小时前
【时光清单|15】HarmonyOS ArkTS 本地状态持久化实战:让保存、删除和页面返回后的数据即时一致
harmonyos·arkts·状态管理·preferences·arkdata
HarmonyOS_SDK11 小时前
焕新鸿蒙应用权限管理方案,应用授权体验再升级
harmonyos