腾讯小程序 java编写_微信小程序 使用腾讯地图SDK详解及实现步骤

本文详细介绍了如何在微信小程序中使用腾讯地图SDK,包括申请开发者密钥、设置安全域名、地点搜索、关键词输入提示、距离计算等功能的实现步骤,并提供了相关代码示例。
摘要由CSDN通过智能技术生成

微信小程序 使用腾讯地图SDK详解及实现步骤

近期在做一款彩票服务类项目中用到了腾讯地图提供的小程序解决方案,拿来给大家分享一下!

使用起来非常简单,就是一些功能还有待完善。

官方文档:http://lbs.qq.com/qqmap_wx_jssdk/index.html

步骤:

申请开发者密钥(key):申请密匙

下载微信小程序JavaScriptSDK,微信小程序JavaScriptSDK v1.0

安全域名设置,需要在微信公众平台添加域名地址https://apis.map.qq.com

小程序示例

// 引入SDK核心类

var QQMapWX = require('../../libs/qqmap-wx-jssdk.js');

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);

}

});

})

结果效果图:

c181cde9416209d2c0d351e079f73608.png

去购彩.png

5.核心类

5.1 地点搜索search(options:Object)

通过关键词keyword搜索周边poi,比如“酒店”“餐饮”“娱乐”“学校”等

去购彩界面的实现:

5.1.1 buy.js

// 引入腾讯地图SDK核心类

var QQMapWX = require('../../utils/qqmap-wx-jssdk.js');

var util = require("../../utils/util.js");

var qqmapsdk;

Page({

data: {

resData: []

},

onLoad: function (options) {

// 实例化腾讯地图API核心类

qqmapsdk = new QQMapWX({

key: 'HPNBZ-B426V-CZQPP-UN4R6-QYOF2-MYFU3'//此处使用你自己申请的key

});

},

onShow: function () {

var that = this;

// 腾讯地图调用接口

qqmapsdk.search({

keyword: '彩票',

page_size: 20,

success: function (res) {

console.log(res);

var resData = res.data;

for (var i = 0; i < resData.length; i++) {

resData[i]._distance = util.formatDistance(resData[i]._distance);//转换一下距离的格式

}

that.setData({resData: resData});

},

fail: function(res) {

console.log(res);

},

complete: function(res) {

console.log(res);

}

})

}

})

// utils/util.js

/**

* 将距离格式化

* <1000m时 取整,没有小数点

* >1000m时 单位取km,一位小数点

*/

function formatDistance(num) {

if (num < 1000) {

return num.toFixed(0) + 'm';

} else if (num > 1000) {

return (num / 1000).toFixed(1) + 'km';

}

}

5.1.2 buy.wxml 主要样式采用weui

{{item.title}}

{{item.address}}

电话:{{item.tel}}

距离:{{item._distance}}

5.2 关键词输入提示getSuggestion(options:Object)

用于获取输入关键字的补完与提示,帮助用户快速输入。

示例:

// 调用接口

qqmapsdk.getSuggestion({

keyword: '技术',

success: function(res) {

console.log(res);

},

fail: function(res) {

console.log(res);

},

complete: function(res) {

console.log(res);

}

});

5.3 距离计算calculateDistance(options:Object)

计算一个点到多点的步行、驾车距离。

示例:

// 调用接口

qqmapsdk.calculateDistance({

mode: 'walking';//步行,驾车为'driving'

to:[{

latitude: 39.984060,

longitude: 116.307520

}, {

latitude: 39.984572,

longitude: 116.306339

}],

success: function(res) {

console.log(res);

},

fail: function(res) {

console.log(res);

},

complete: function(res) {

console.log(res);

}

});

5.4 另外还有以下功能,就不一一演示了。

getCityList(options:Object):获取全国城市列表数据;

getDistrictByCityId(options:Object):通过城市ID返回城市下的区县;

reverseGeocoder(options:Object):用于获取输入关键字的补完与提示,帮助用户快速输入

geocoder(options:Object):提供由地址描述到所述位置坐标的转换,与逆地址解析reverseGeocoder()的过程正好相反。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值