# wx.getLocation(Object object)

Promise 风格 调用:支持

用户授权:需要 scope.userLocation

小程序插件:支持,需要小程序基础库版本不低于 1.9.6

微信 Windows 版:支持

微信 Mac 版:支持

# 功能描述

获取当前的地理位置、速度。当用户离开小程序后,此接口无法调用。开启高精度定位,接口耗时会增加,可指定 highAccuracyExpireTime 作为超时时间。地图相关使用的坐标格式应为 gcj02。 高频率调用会导致耗电,如有需要可使用持续定位接口 wx.onLocationChange。 基础库 2.17.0 版本起 wx.getLocation 增加调用频率限制,相关公告

# 使用方法

自 2022 年 7 月 14 日后发布的小程序,若使用该接口,需要在 app.json 中进行声明,否则将无法正常使用该接口,2022年7月14日前发布的小程序不受影响。具体规则见公告

# 申请开通

暂只针对如下类目的小程序开放,需要先通过类目审核,再在小程序管理后台,「开发」-「开发管理」-「接口设置」中自助开通该接口权限。 接口权限申请入口将于2022年3月11日开始内测,于3月31日全量上线。并从4月18日开始,在代码审核环节将检测该接口是否已完成开通,如未开通,将在代码提审环节进行拦截。

# 国内主体开放类目

一级类目/主体类型 二级类目 应用场景
电商平台 / 售卖商品线下发货、线下收货服务
商家自营 / 提供售卖商品线下发货、线下收货服务、线下商超导览、导航服务
医疗服务 公立医疗机构、三级私立医疗机构、其他私立医疗机构、就医服务、其他医学健康服务、药品(非处方药)销售、非处方药销售平台、医疗器械生产企业、医疗器械自营、医疗器械经营销售平台、互联网医院血液、干细胞服务、临床试验 1、实际物品/药品接收服务 2、基于地理位置取号并现场报到、附近医院导航等服务
交通服务 / 代驾服务、租车网点导航等相关服务
生活服务 / 上门服务作业等线下场景
物流服务 收件/派件、查件、邮政、装卸搬运、快递柜、货物运输 快递/货物收发服务
餐饮服务 点餐平台、外卖平台、餐饮服务场所/餐饮服务管理企业 线下送餐服务
工具 天气、信息查询、办公、设备管理 与地理位置相关的服务,比如潮汐查询、海拔查询、天气查询、智能穿戴、智能门禁、与地理位置相关的打卡服务等
金融 银行、非金融机构自营小额贷款/融资担保/商业保理、保险 提供线下网点预约、基于地理位置取号并现场报到、附近网点导航等服务
旅游 景区服务、住宿服务 提供景区导航、导览服务、酒店导航服务
汽车服务 维修保养、汽车用品、汽车经销商/4S店、汽车厂商、汽车预售、二手车 提供汽车售卖、维保洗美服务、查找附近的维修点/洗车网点等导航服务
IT科技 基础电信运营商、电信业务代理商 提供运营商线下网点的预约、基于地理位置取号并现场报到、网点导航等服务
房地产服务 物业管理、房屋中介、房屋装修 提供房地产开发商及物业公司门店导览导航服务
政务民生 / 提供政务单位相关业务
政府主体账号 / 提供政务单位相关业务

# 海外主体开放类目

一级类目/主体类型 二级类目 应用场景
出行与交通 / 代驾服务、租车网点导航等相关服务
快递业与邮政 / 快递/货物收发服务
餐饮 / 线下送餐服务
电商平台 / 售卖商品线下发货、线下收货服务
出行与交通 / 代驾服务、租车网点导航等相关服务
跨境电商 / 提供售卖商品线下发货、收货服务、线下商超导览、导航服务
本地服务 服装/鞋/箱包、玩具、家电/数码/手机、美妆/洗护、珠宝/饰品/眼镜/钟表、运动/户外/乐器、鲜花/园艺/工艺品、家居/家饰/家纺、办公/文具、机械/电子器件、酒、食品、百货、超市/便利店、宠物食品/用品 提供售卖商品线下发货、线下收货服务、线下商超导览、导航服务
生活服务 家政、外送 上门服务作业等线下场景

# 参数

# Object object

属性 类型 默认值 必填 说明 最低版本
type string wgs84 wgs84 返回 gps 坐标,gcj02 返回可用于 wx.openLocation 的坐标
altitude boolean false 传入 true 会返回高度信息,由于获取高度需要较高精确度,会减慢接口返回速度 1.6.0
isHighAccuracy boolean false 开启高精度定位 2.9.0
highAccuracyExpireTime number 高精度定位超时时间(ms),指定时间内返回最高精度,该值3000ms以上高精度定位才有效果 2.9.0
success function 接口调用成功的回调函数
fail function 接口调用失败的回调函数
complete function 接口调用结束的回调函数(调用成功、失败都会执行)

# object.success 回调函数

# 参数
# Object res
属性 类型 说明 最低版本
latitude number 纬度,范围为 -90~90,负数表示南纬
longitude number 经度,范围为 -180~180,负数表示西经
speed number 速度,单位 m/s
accuracy number 位置的精确度,反应与真实位置之间的接近程度,可以理解成10即与真实位置相差10m,越小越精确
altitude number 高度,单位 m 1.2.0
verticalAccuracy number 垂直精度,单位 m(Android 无法获取,返回 0) 1.2.0
horizontalAccuracy number 水平精度,单位 m 1.2.0

# 示例代码

wx.getLocation({
 type: 'wgs84',
 success (res) {
   const latitude = res.latitude
   const longitude = res.longitude
   const speed = res.speed
   const accuracy = res.accuracy
 }
})

# 注意

  • 2.17.0 起wx.getLocation` 增加调用频率限制,相关公告
  • 工具中定位模拟使用IP定位,可能会有一定误差。且工具目前仅支持 gcj02 坐标。
  • 使用第三方服务进行逆地址解析时,请确认第三方服务默认的坐标系,正确进行坐标转换。