uni-app/微信小程序接入腾讯位置服务地图选点插件

uni-app/微信小程序接入腾讯位置服务地图选点插件

0、常出现的错误及解决方法

0.1插件未授权使用(见步骤1)

0.2小程序类目不符合引用该类目插件的要求或主体类型不符合要求(见步骤1)

0.3需要在app.json中声明permission scope.userLocation 字段(见步骤3)

1、授权插件使用

腾讯位置服务的文档对该插件的接入指引中提到:

在腾讯微信公众平台中, "微信小程序官方后台-设置-第三方服务-插件管理 " 里点击 "添加插件",搜索 "腾讯位置服务地图选点" 申请,申请后小程序开发者可在小程序内使用该插件。

但实际操作过程中,在添加插件的搜索页中,直接搜索腾讯位置服务地图选点,并不能找到的对应的插件。

通过文档查看可以知道,该插件适用的类目为交通服务 > 导航地图

这时就算在腾讯位置服务的网页中添加该插件,会提示

添加失败,小程序类目不符合引用该类目插件的要求或主体类型不符合要求

在小程序后台首页点击添加类目时又发现,交通服务下没有导航地图的类目。

这时可以访问微信服务市场,搜索腾讯位置服务地图选点 插件,选择接口与插件,就能找到对应的插件,或直接点击这里,登录相同的账号点击添加即可完成授权

添加插件完成后,在微信小程序官方后台-设置-第三方服务-插件管理 中即可看到对应的插件

点击详情,可以查看该插件的相关信息及接入文档

2、地图key生成

腾讯位置服务地图选点插件接入文档中提到需要一个地图key,首先登录腾讯位置服务控制台,点击左侧应用管理,创建应用,再添加key。

创建完key之后,要记得对key 做配额管理,不然在应用中,会提示该接口日访问量已用完

特别是周边推荐的接口额度

3、代码接入

在manifest.json中,微信小程序配置中填写appid 勾选位置接口(若不勾选 最后会提示需要在app.json中声明permission scope.userLocation 字段

在page.json中插入组件

javascript 复制代码
"plugins": {
	"chooseLocation": {
		"version": "1.1.1",
	    "provider": "wx76a9a06e5b4e693e"
	}
}

template

javascript 复制代码
<template>
	<view>
		<button @click="open">打开地图选点</button>
		<view v-if="info">
			<text>地址:{{info.address}}</text>
			<text>坐标:{{info.latitude}}, {{info.longitude}}</text>
		</view>
	</view>
</template>

js

javascript 复制代码
const chooseLocation = requirePlugin('chooseLocation');
export default {
	data() {
		return {
			info: null
		}
	},
	onShow() {
		// 如果点击确认选点按钮,则返回选点结果对象,否则返回null
		const location = chooseLocation.getLocation(); 
		this.info = location
	},
	open() {
		const key = '11111'; //使用在腾讯位置服务申请的key
		const referer = '1'; //调用插件的app的名称
		const location = JSON.stringify({
			latitude: 39.89631551,
			longitude: 116.323459711,
		});
		const category = '生活服务,娱乐休闲';
		//其他需要的参数,可以查看文档
		uni.navigateTo({
			url: `plugin://chooseLocation/index?key=${key}&referer=${referer}&location=${location}&category=${category}`,
		});
		
	}
}
相关推荐
TeleostNaCl4 分钟前
解决 Chrome 无法访问网页但无痕模式下可以访问该网页 的问题
前端·网络·chrome·windows·经验分享
前端大卫2 小时前
为什么 React 中的 key 不能用索引?
前端
你的人类朋友2 小时前
【Node】手动归还主线程控制权:解决 Node.js 阻塞的一个思路
前端·后端·node.js
小李小李不讲道理3 小时前
「Ant Design 组件库探索」五:Tabs组件
前端·react.js·ant design
毕设十刻3 小时前
基于Vue的学分预警系统98k51(程序 + 源码 + 数据库 + 调试部署 + 开发环境配置),配套论文文档字数达万字以上,文末可获取,系统界面展示置于文末
前端·数据库·vue.js
2501_915909064 小时前
WebView 调试工具全解析,解决“看不见的移动端问题”
android·ios·小程序·https·uni-app·iphone·webview
mapbar_front4 小时前
在职场生存中如何做个不好惹的人
前端
牧杉-惊蛰4 小时前
纯flex布局来写瀑布流
前端·javascript·css
一袋米扛几楼986 小时前
【软件安全】什么是XSS(Cross-Site Scripting,跨站脚本)?
前端·安全·xss
向上的车轮6 小时前
Actix Web适合什么类型的Web应用?可以部署 Java 或 .NET 的应用程序?
java·前端·rust·.net