微信小程序之实现地图定位使用腾讯位置服务插件

一. 腾讯位置服务插件简介

完整的地图能力

腾讯位置服务基于微信提供的小程序插件能力,专注于(围绕)地图功能,打造一系列小程序插件,可以帮助开发者简单、快速的构建小程序,是实现地图功能的最佳伙伴。

目前腾讯位置服务提供 路线规划、地图选点、地铁图 三款插件产品,本篇博客主要针对地图选点功能进行实现。

路线规划:提供地图路线规划功能。根据起终点,智能规划驾车、公交、步行出行路线及详情。开发者可以将路线规划插件嵌入到自建小程序的页面里,实现路线规划功能。

地铁图:支持全国重点城市地铁线路静态展示、信息查询、线路检索及规划功能。

地图选点:快速、准确地选择并确认自己的当前位置,并将相关位置信息回传给开发者。同时还提供位置检索、关键词分类等辅助功能。

地图插件的优势

丰富的插件市场:丰富的地图插件产品,为开发者提供更多的选择,满足不同的应用场景。

节约开发成本:插件本身具有强大的灵活性,无需开发者投入专业的人力研发,就可以拥有地图能力,缩减企业研发成本。

专业的行业方案:腾讯位置服务专注于地图能力,多年服务政企、美团、京东、滴滴等大客户的经验,锻造了更加专业的产品并提供更优秀的行业解决方案。

二. 开通腾讯位置服务

1.进入微信公众平台

https://mp.weixin.qq.com/

2.登录进入小程序后台,选择 “开发 - 开发工具 - 腾讯位置服务”

在这里插入图片描述


3.点击 “开通”,进入授权扫码界面

在这里插入图片描述


4.使用微信扫码进行授权

在这里插入图片描述


5.绑定开发者账号

在这里插入图片描述

三. 接入插件

1.在小程序后台,选择 “设置 - 第三方设置 - 插件管理”,点击 “添加插件”

在这里插入图片描述

2.搜索 “腾讯位置服务地图选点” 进行添加

在这里插入图片描述

四. 开发者密钥配置

1. 申请开发者密钥

进入腾讯位置服务平台:

https://lbs.qq.com?lbs_invite=Y9PRFLY

注册或登录后,申请开发者密钥:

在这里插入图片描述


PS: 成功申请密钥后才可以调用腾讯位置服务官网提供的相关服务;

2. 设置KEY的 “启用产品”

a. 勾选微信小程序,设置授权 APP ID

在这里插入图片描述


授权 APP ID 可以通过 “设置 - 基本设置” 的账号信息进行查看

在这里插入图片描述

b. 勾选 “WebService API”

在这里插入图片描述

小程序插件需要使用WebService API的部分服务,所以需要给使用该功能的KEY配置相应权限。

如果填写了域名白名单,需要把servicewechat.com 域名添加进域名白名单中,否则小程序下将无法正常使用WebServiceAPI服务。

五. 插件的使用

1.引入插件

地图选点appId: wx76a9a06e5b4e693e

// app.json
{
    "plugins": {
        "chooseLocation": {
        "version": "1.0.5",
        "provider": "wx76a9a06e5b4e693e"
        }
    }
} 

2.设置定位授权

地图选点插件需要小程序提供定位授权才能够正常使用定位功能

// app.json
{
    "permission": {
        "scope.userLocation": {
        "desc": "你的位置信息将用于小程序定位"
        }
    }
}

3. 代码实现

a. js代码

"use strict";
const chooseLocation = requirePlugin('chooseLocation');
Page({
    data: {
        address: "",
        locationName: ""
    },
    onShow: function () {
        // 从地图选点插件返回后,在页面的onShow生命周期函数中能够调用插件接口,取得选点结果对象
        // 如果点击确认选点按钮,则返回选点结果对象,否则返回null
        const location = chooseLocation.getLocation();
        if(location){
            this.setData({
                address: location.address?location.address : "",
                locationName: location.name?location.name : ""
            });
        }
    },
    //显示地图
    showMap() {
        //使用在腾讯位置服务申请的key(必填)
        const key = ""; 
        //调用插件的app的名称(必填)
        const referer = ""; 
        wx.navigateTo({
            url: 'plugin://chooseLocation/index?key=' + key + '&referer=' + referer
        });
    }
});

plugin://chooseLocation/index 接口参数说明:

在这里插入图片描述

b. wxml代码

<!--index.wxml-->
<view class="container">
  <button bindtap="showMap">选择位置</button>
  <view style="margin-top:10px">地址:{{address?address:"暂无"}}</view>
  <view style="margin-top:10px">名称:{{locationName?locationName:"暂无"}}</view>
</view>

4. 效果实现

在这里插入图片描述

相关文章

概述 消息能力是小程序能力中的重要组成,我们为开发者提供了...
判断H5页面环境在微信中还是小程序中 用小程序提供的wx.mini...
wx.reLaunch和wx.navigateTo,wx.navigateTo的区别 2019-03-...
微信小程序如何从数组里取值_微信小程序 传值取值的几种方法...
H5项目接入微信授权登录,通过 UA 区分微信还是普通浏览器:...
微信小程序获取data-xx=&quot;&quot;属性的值,自定...