微信小程序中腾讯位置API使用

微信小程序中腾讯位置API使用

本例主要是针对于微信小程序的定位功能和获取周边的poi信息

准备工作

  1. 申请开发者密钥(key):申请密钥
  2. 开通webserviceAPI服务:控制台 -> key管理 -> 设置(使用该功能的key)-> 勾选webserviceAPI -> 保存
  3. 下载微信小程序JavaScriptSDK,微信小程序JavaScriptSDK v1.2下完了把两个js文件放进项目中
  4. 安全域名设置,在“设置” -> “开发设置”中设置request合法域名,添加https://apis.map.qq.com,或者开发时选择不校验合法域名

小程序示例

通过关键字查询附近poi

var QQMapWX = require('../../../utils/qqmap-wx-jssdk.js'); //引入SDK核心类
var qqmapsdk;
Page({
    onLoad: function () {
        // 实例化API核心类
        qqmapsdk = new QQMapWX({
            key: '申请的key'
        });
    },
    onShow: function () {
        // 调用接口
        qqmapsdk.search({
            keyword: '这里可以填写关键字',
            success: function (res) {
                console.log(res);
            },
            fail: function (res) {
                console.log(res);
            },
        complete: function (res) {
            console.log(res);
        }
    });
})

逆地址解析(坐标位置描述)

var QQMapWX = require('../../../utils/qqmap-wx-jssdk.js'); //引入SDK核心类
var qqmapsdk;
Page({
    onLoad: function () {
        // 实例化API核心类
        qqmapsdk = new QQMapWX({
            key: '申请的key'
        });
    },
     onShow: function (options){
         this.getLocal();
    },
    //调用微信api获取经纬度然后传入地图API
      getLocation: function(){
        let vm = this;
        wx.getLocation({
          type: 'wgs84',
          altitude: true,
          success: function(res) {
            console.log(res);
            var latitude = res.latitude;
            var longitude = res.longitude;
            //传入参数
            vm.getLocal(latitude, longitude)
          },
          fail: function(res){
            console.log('获取经纬度失败fail')
          }
        })
      },
      //获取当前地理位置
      getLocal: function (latitude, longitude){
        let vm = this;
        qqmapsdk.reverseGeocoder({
          location: {
            latitude: latitude,
            longitude: longitude
          },
          success: function (res) {
            console.log(res);
          },
          fail: function (res) {
            console.log('获取API定位信息失败');
          }
        })
      }
    })

关于位置API参数问题

官方文档上有详细介绍,这里我讲一下官方文档中不太能弄清楚的地方

  1. 如果是使用小程序原生开发,API中类似于poi_options=page_index=1都是写为poi_options:'page_index=1’格式
  2. filter过滤器的参数需要把类型转化为url编码再传入,例如:

//地址搜索,排除掉公交站的信息
search: function(e){
    var vm = this
    console.log(e.detail.value);
    qqmapsdk.search({
      keyword: e.detail.value,  //搜索关键词
      region: location,
      filter: 'category<>%E5%85%AC%E4%BA%A4%E8%BD%A6%E7%AB%99',
      success: function (res) {
        console.log(res)
      }
    })
  },

关于如何转化url编码

你把想要的东西输入这个转换编码网站,转换了复制粘贴到代码中就ok了!

  • 5
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
微信小程序可以通过调用腾讯地图API实现一些地图相关的功能。首先,在小程序开发过程,需要先在微信公众平台申请开通腾讯地图API的权限。然后,开发者可以使用小程序的开发工具,在相关的页面引入腾讯地图API的SDK。 在小程序调用腾讯地图API可以实现一些功能,如地图显示、定位、搜索、导航等。开发者可以在小程序创建一个地图容器,通过调用腾讯地图API的相关方法,将地图显示在小程序的指定位置上。用户可以通过手势操作地图进行缩放、平移等操作。 同时,通过腾讯地图API的定位功能,小程序可以获取用户的地理位置信息。开发者可以在小程序调用相关接口,实现用户位置的定位和显示。此外,小程序还可以通过调用腾讯地图API的搜索功能,实现地点、位置、路线的搜索。用户可以通过输入关键词,获取相关的地点信息,并在地图上显示。 另外,小程序还可以调用腾讯地图API的导航功能,实现路线规划和导航功能。用户可以通过输入起始点和终点,获取最佳的交通路线,并在地图上显示导航路线。开发者可以通过调用腾讯地图API提供的导航接口,实现小程序的导航功能。 总之,微信小程序可以通过调用腾讯地图API实现地图显示、定位、搜索和导航等功能,为用户提供更好的地理信息服务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值