uniapp获取地理位置的API是什么

在 uni-app 中,可以使用 uni.getLocation API 获取用户当前地理位置信息。

具体用法如下:

uni.getLocation({
  type: 'wgs84', // 坐标类型,默认为 wgs84,可选的值为 gcj02
  altitude: false, // 是否获取高度信息,默认为 false
  success: function (res) {
    console.log(res)
    // 返回数据结构:
    // {
    //   latitude: Number, // 纬度,范围为 -90~90,负数表示南纬
    //   longitude: Number, // 经度,范围为 -180~180,负数表示西经
    //   speed: Number, // 速度,单位 m/s
    //   accuracy: Number, // 位置的精确度
    //   altitude: Number, // 高度,单位 m
    //   verticalAccuracy: Number, // 垂直精度,单位 m(仅 altitude 为 true 时有效)
    //   horizontalAccuracy: Number // 水平精度,单位 m
    // }
  },
  fail: function (err) {
    console.log(err)
  }
})

其中,type 参数表示坐标类型,有两种选择:wgs84gcj02altitude 参数表示是否获取高度信息,如果设置为 true,则返回的数据中会包含高度信息。

需要注意的是,为了保护用户隐私,当用户未授权获取位置信息时,该 API 将无法获取位置信息。此时,可以通过 uni.authorize 方法请求用户授权,示例代码如下

uni.authorize({
  scope: 'scope.userLocation',
  success() {
    // 用户已授权,可以调用 getLocation 方法获取位置信息
  },
  fail() {
    // 用户未授权,需要提示用户授权
  }
})

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值