0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

鸿蒙语言基础类库:system.geolocation 地理位置

jf_46214456 来源:jf_46214456 作者:jf_46214456 2024-07-17 09:37 次阅读

地理位置

说明:
开发前请熟悉鸿蒙开发指导文档 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]

  • 从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

参数:

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

success返回值:

参数名类型说明
longitudenumber设备位置信息:经度。
latitudenumber设备位置信息:纬度。
altitudenumber设备位置信息:海拔。
accuracynumber设备位置信息:精确度。
timenumber设备位置信息:时间。

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

参数:

参数名类型必填说明
successFunction接口调用成功的回调函数。
failFunction接口调用失败的回调函数。
completeFunction接口调用结束的回调函数。

success返回值:

参数名类型说明
typesArray可选的定位类型['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

参数:

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

success返回值:

参数名类型说明
longitudenumber设备位置信息:经度。
latitudenumber设备位置信息:纬度。
altitudenumber设备位置信息:海拔。
accuracynumber设备位置信息:精确度。
timenumber设备位置信息:时间。

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

返回值:

QQ截图20240715201355.png

类型非空说明
Array表示坐标系类型,如[wgs84, gcj02]。

示例:

export default {    
  getSupportedCoordTypes() {       
    var types = geolocation.getSupportedCoordTypes();    
  },
}

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 鸿蒙
    +关注

    关注

    56

    文章

    2266

    浏览量

    42461
收藏 人收藏

    评论

    相关推荐

    鸿蒙原生应用元服务开发-Web管理位置权限

    ;!-- 前端页面访问设备地理位置 --> navigator.geolocation.getCurrentPosition(showPosition); } } function
    发表于 04-28 16:57

    老司机教你分析日志:分析用户的地理位置信息

    摘要: 地理位置的需求 通常我们分析用户的需求,了解到用户当前位置在哪里非常重要,例如,可以根据用户的地理位置,针对性的推广本地广告。 通常,我们可以在客户端获取定位权限来获取GPS信息。但是如果
    发表于 01-30 14:35

    请问单片机连接esp8266模块怎么获取地理位置

    单片机通过esp8266模块连接数据商的tcp服务器,实现发送经纬度,返回地理位置(某省某市)。现在问题是数据商那边请求格式是http的网址,但是单片机这边例程是通过输入IP地址连接。请问这个问题怎么解决?
    发表于 07-10 03:54

    关于智能穿戴应用开发的几个疑问?

    from '@system.geolocation';export default { data: { }, onInit() {var types
    发表于 09-27 10:23

    如何使用群组电台实现高效的地理位置应用?

    请问如何使用群组电台实现高效的地理位置应用?
    发表于 04-19 08:35

    Facebook或推定位功能 自动标注用户地理位置

    Facebook或推定位功能 自动标注用户地理位置 北京时间3月10日消息,据国外媒体报道,Facebook用户今后可能不再需要在状态升级中键入自己的地理位置了,因为该社交网
    发表于 03-10 09:18 891次阅读

    低功耗群组电台的地理位置应用

    关键字:地理位置应用 群组电台 碰撞避免 位置意识 在无线传感器网络中,群组的概念用于描述一个组中的成员是如何相互作用的。群组中的各个成员需要知道相互间的相对位置。已经有公司在无线传感器网络中增加了
    发表于 09-14 14:02 0次下载

    Android取证中地理位置信息提取分析实现

    Android手机用户在日常使用中产生了大量的地理位置信息。在手机取证调查中,这些地理位置信息能够有效反映用户的行为轨迹,具有重要的证据价值,同时也为案件侦破提供重要线索。目前,公安机关在案件的侦破
    发表于 11-30 16:14 0次下载
    Android取证中<b class='flag-5'>地理位置</b>信息提取分析实现

    谷歌将重点整治地理位置权限的乱申请

    安卓系统的开放带给大家很多便利,但是不少应用也滥用权限给用户带来很多麻烦,包括隐私泄露。最烦人的权限申请一个是电话/通讯录,另外一个要属地理位置权限了,因为获取地理位置大部分都是为了推广告。
    的头像 发表于 02-23 20:27 1589次阅读

    基于LoRa技术的地理位置解决方案解析

    此时,如果把A大厦、肯德基和麦当劳这三个已知的地点换成是三个固定的网关,而你本人比作是一个移动的物联网终端的话,那么就可以理解为,通过三个网关是能够确定一个终端的位置,这也正是为什么实现地理位置功能至少需要三个网关接收数据包的原因所在。
    的头像 发表于 03-15 11:36 3526次阅读

    SWay使用GPS监控孩子的地理位置

    电子发烧友网站提供《SWay使用GPS监控孩子的地理位置.zip》资料免费下载
    发表于 11-01 10:01 1次下载
    SWay使用GPS监控孩子的<b class='flag-5'>地理位置</b>

    华为紧急通话界面显示地理位置专利公布,提升救援成功率

    综上所述,该方法包括:当用户紧急呼叫时,显示紧急通话接口获得的当前地理位置信息。渲染至少有一个问题:文字和地图。用上述方法界面出现了目前的地理位置信息
    的头像 发表于 10-10 14:24 767次阅读
    华为紧急通话界面显示<b class='flag-5'>地理位置</b>专利公布,提升救援成功率

    鸿蒙OpenHarmony大合集:【语言基础

    本示例集合语言基础的各个子模块,展示了各个模块的基础功能
    的头像 发表于 04-29 16:38 398次阅读
    <b class='flag-5'>鸿蒙</b>OpenHarmony大合集:【<b class='flag-5'>语言</b>基础<b class='flag-5'>类</b><b class='flag-5'>库</b>】

    鸿蒙语言基础system.configuration 应用配置

    获取应用当前的语言和地区。默认与系统的语言和地区同步。
    的头像 发表于 07-16 09:34 190次阅读

    鸿蒙语言基础system.file 文件存储

    将指定文件移动到其他指定位置
    的头像 发表于 07-17 10:41 247次阅读
    <b class='flag-5'>鸿蒙语言</b>基础<b class='flag-5'>类</b><b class='flag-5'>库</b>:<b class='flag-5'>system</b>.file  文件存储