微信小程序开发 集成腾讯地图服务 获取地理位置(经纬度信息) 逆向解析地址

开发前准备工作,先阅读腾讯地图接口文档,在小程序中引入地图sdk,并在公众号后台配地图接口域名https://apis.map.qq.com,详见笔者另外一篇博客(微信小程序根据经纬度动态定位计算周边商家导航距离)

微信小程序开发 集成腾讯地图服务 获取地理位置(经纬度信息) 逆向解析地址_第1张图片

具体的业务开发核心代码

getLocation: function (e) {
    var that = this;
    console.log(e)
    wx.getLocation({
      type: 'wgs84', // 默认为 wgs84 返回 gps 坐标,gcj02 返回可用于 wx.openLocation 的坐标
      success: function (res) {
        console.log(res)
        that.setData({ 
          longitude: res.longitude,
          latitude: res.latitude
        })
        //获取到经纬度信息后设置为项目全局变量,便于其他页面从全局变量中直接取值
        app.globalData.longitude = res.longitude;
        app.globalData.latitude = res.latitude;
        var qqmapsdk = new QQMapWX({
            key: '6OSBZ-KPV63-O6U3N-YABN2-UI23H-2RBY6' // 必填
        });
        qqmapsdk.reverseGeocoder({
          location: {
            latitude: that.data.latitude,
            longitude: that.data.longitude
          },
          success: function (res) {
            console.log("获取地址成功:" + res.result.ad_info.city);
            that.setData({
              locationCity: res.result.ad_info.city,
              adcode: res.result.ad_info.adcode
            })
            app.globalData.adcode = res.result.ad_info.adcode;
            app.globalData.cityName = res.result.ad_info.city;
            //获取到经纬度定位信息并且逆向解析为行政区划信息(省市区县)后处理具体的业务数据
          },
          fail: function (res) {
            console.log("逆向解析地理位置服务异常,获取地址失败" + res);
          },
          complete: function (res) {
            console.log(res);
          }
        });
      }, 
      fail:function(e){
        console.log("由于未授权地理位置服务,获取地址失败" + e);
        // that.setData({ isFixed: 'fixed', allowLayer:false});
      }
     })
  }

欢迎广大开发者一起交流学习,笔者电话微信18629374628

你可能感兴趣的:(微信开发案例教程,小程序定位,小程序获取地理位置,小程序获取经纬度,小程序计算距离,逆向解析地址)