⼩程序⾼德地图SDK详解及简单实例(源码下载)
⼩程序⾼德地图SDK:
简介
⼩程序 SDK 帮您在⼩程序中获取⾼德丰富的地址描述、POI和实时天⽓数据。
功能介绍
账号与Key的申请
注册成为⾼德开发者需要分三步:
第⼀步,注册⾼德开发者;第⼆步,去控制台创建应⽤;第三步,获取Key。
1注册⾼德开发者
2创建应⽤
3获取API key
获取API Key
⼊门指南
最后更新时间: 2017年1⽉9⽇
本指南是使⽤⼩程序SDK的快速⼊门指南。
第 1 步:下载并安装⼩程序开发⼯具
按照下载并安装⼩程序开发者⼯具。
第 2 步:获取⾼德Key
点我获取Key>>
点我查看申请⾼德Key的⽅法>>
第 3 步:创建项⽬
按以下步骤新建⼀个本地⼩程序项⽬。
1、启动 "web开发者⼯具",使⽤扫描⼆维码后,并在上点击 "确认登录" 按钮后登录到开发⼯具。
2、点击 "本地⼩程序项⽬" 按钮选择调试类型。
3、点击 "+" 按钮,添加项⽬。
4、依次输⼊ AppID(获取⽅法请参考:),项⽬名称,选择项⽬⽬录,并勾选 "在当前⽬录中创建 quick start 项⽬",然后点击 "添加项⽬" 按钮,重新登录公众平台,完成项⽬创建。相关下载页⾯下载开发包并解压。
第 4 步:下载并安装⼩程序SDK
从相关下载页⾯下载开发包并解压。
解压后得到 amap-wx.js ⽂件,在创建的项⽬中,新建⼀个名为 libs ⽬录,将 amap-wx.js ⽂件拷贝到 libs 的本地⽬录下,完成安装。第 5 步:设置安全通讯域名
为了保证⾼德⼩程序 SDK 中提供的功能的正常使⽤,需要设置安全域名。
第 6 步:Hello AMapWX
1、创建⼩程序实例。
若在创建项⽬时,勾选了"在当前⽬录中创建 quick start 项⽬",可直接跳过此步骤,否则请参考进⾏⼩程序⽰例创建。
2、设置 index.js ⽂件。
index.js 在项⽬空间的 page/index ⽬录下,是页⾯的脚本⽂件,在这个⽂件中完成监听并处理页⾯的⽣命周期函数,声明并处理数据,响应页⾯交互事件等。
⾸先,在 index.js 中引⼊ amap-wx.js ⽂件。
var amapFile = require('path/to/amap-wx.js');//如:../../libs/amap-wx.js
然后,在 index.js 中实例化 AMapWX 对象,调⽤ getPoiAround ⽅法,获取POI数据。
为保证 marker 以⾃定义的图标显⽰,需在项⽬中新建 img ⽬录,并将 marker 对应的图标拷贝到项⽬的本地的 img ⽬录中,同时在index.js 添加以下代码:
var markersData = [];
Page({
data: {
markers: [],
latitude: '',
longitude: '',
textData: {}
},
makertap: function(e) {
var id = e.markerId;
var that = this;
that.showMarkerInfo(markersData,id);
that.changeMarkerColor(markersData,id);
},
onLoad: function() {
var that = this;
var myAmapFun = new amapFile.AMapWX({key:'您的key'});
iconPathSelected: '选中 marker 图标的相对路径', //如:../../img/marker_checked.png
iconPath: '未选中 marker 图标的相对路径', //如:../../img/marker.png
success: function(data){
markersData = data.markers;
that.setData({
markers: markersData
});
that.setData({
latitude: markersData[0].latitude
});
that.setData({
longitude: markersData[0].longitude
});
that.showMarkerInfo(markersData,0);
},
fail: function(info){
wx.showModal({Msg})
}
})
},
showMarkerInfo: function(data,i){
var that = this;
that.setData({
textData: {
name: data[i].name,
desc: data[i].address
}
});
},
changeMarkerColor: function(data,i){
var that = this;
var markers = [];
for(var j = 0; j < data.length; j++){
if(j==i){
data[j].iconPath = "选中 marker 图标的相对路径"; //如:../../img/marker_checked.png
}else{
data[j].iconPath = "未选中 marker 图标的相对路径"; //如:../../img/marker.png
}
markers.push(data[j]);
}
that.setData({
markers: markers
});
}
})
2、设置 index.wxml ⽂件。
index.wxml 在项⽬空间的 page/index ⽬录下,该⽂件是页⾯结构⽂件,⽤来搭建页⾯结构,绑定数据和交互处理函数等。
⽰例代码如下:
<view class="map_container">
<map class="map" id="map" longitude="{{longitude}}" latitude="{{latitude}}" scale="14" show-location="true" markers="{{markers}}" bindmarkertap="makertap"></map>
</view>
<view class="map_text">
<text class="h1">{{textData.name}}</text>
<text>{{textData.desc}}</text>
</view>
3、设置 index.wxss ⽂件。
index.wxss 在项⽬空间的 page/index ⽬录下,是页⾯样式⽂件。
⽰例代码如下:
.map_container{
position: absolute;
top: 0;
bottom: 80px;
left: 0;
right: 0;
}
.map{
width: 100%;
height: 100%;
}
.map_text{
position: absolute;
left: 0;
right: 0;
bottom: 0px;
height: 80px;
background: #fff;
padding: 0 15px;
}
text{
margin: 5px 0;
display: block;
font-size:12px;
}
.h1{
margin: 15px 0;
font-size:15px;
}
第 7 步:构建和⼿机预览您的⼩程序
点击左侧菜单栏中控制台按钮,构建您的⼩程序,查看运⾏效果。
您也可以选择在上看最终的效果,选择开发⼯具左侧菜单栏的"项⽬",点击"预览",使⽤扫码后即可在客户端中体验。
获取Key
最后更新时间: 2017年1⽉6⽇
1、进⼊控制台,创建⼀个新应⽤。如果您之前已经创建过应⽤,可直接跳过这个步骤。
2、在创建的应⽤上点击"添加新Key"按钮,在弹出的对话框中,依次:输⼊应⽤名名称,选择绑定的服务平台为“⼩程序”,如下图所⽰:
在阅读完⾼德地图API服务条款后,勾选此选项,点击“提交”,完成 Key 的申请,此时您可以在所创建的应⽤下⾯看到刚申请的 Key 了。配置⼯程
最后更新时间: 2017年1⽉6⽇
第 1 步:新建⼀个⼩程序项⽬
新建⼀个本地⼩程序项⽬,您可参考⼊门指南<;创建项⽬>章节。
第 2 步:添加 js ⽂件
在创建的项⽬中,新建⼀个名为 libs ⽬录,将 amap-wx.js ⽂件拷贝到 libs 的本地⽬录下,如下图所⽰。
获取POI数据
最后更新时间: 2017年1⽉9⽇
查您当前位置周边 “餐饮服务”、“商务住宅”、“⽣活服务”类型的POI,解决您的吃穿住⾏问题。
SDK 返回 marker 数组,可以直接⽤来在的地图组件上标记,同时,也返回了POI数组⽤于您的⾃定义的界⾯页⾯展⽰。
实现POI周边查询功能的步骤如下:
1、在页⾯的 js ⽂件中,实例化 AMapWX 对象,处理搜索数据。
⾸先,引⼊ amap-wx.js ⽂件。
var amapFile = require('path/to/amap-wx.js');//如:../../libs/amap-wx.js
然后,构造 AMapWX 对象,并调⽤ getPoiAround ⽅法,代码如下:
Page({
onLoad: function() {
var that = this;
var myAmapFun = new amapFile.AMapWX({key:'⾼德Key'});
success: function(data){
sdk//成功回调
},
fail: function(info){
//失败回调
console.log(info)
}
})
},
})
2、编写页⾯的 wxml ⽂件,搭建页⾯结构。
<view class="map_container">
<!--定义页⾯结构,可以使⽤地图组件也能使⽤其他组件 -->
</view>
3、编写页⾯的 wxss ⽂件,设置页⾯样式。
.map_container{
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
}
……
⽰例将查询结果以 marker 显⽰在地图上,同时点击 marker 时,以⽂本显⽰ marker 的详细信息。运⾏程序,效果如下:获取地址描述数据
可以将定位地点的详细地址信息,便于您快速的到准确的地点。
实现逆地理编码功能的步骤如下:
1、在页⾯的 js ⽂件中,实例化 AMapWX 对象,处理搜索数据。
⾸先,引⼊ amap-wx.js ⽂件。
var amapFile = require('path/to/amap-wx.js');//如:../../libs/amap-wx.js
然后,构造 AMapWX 对象,并调⽤ getPoiAround ⽅法,代码如下:
Page({
onLoad: function() {
var that = this;
var myAmapFun = new amapFile.AMapWX({key:'⾼德Key'});
success: function(data){
//成功回调
},
fail: function(info){
//失败回调
console.log(info)
}
})
},
})
2、编写页⾯的 wxml ⽂件,搭建页⾯结构。
<view class="map_container">
<!--定义页⾯结构,可以使⽤地图组件也能使⽤其他组件 -->
</view>
3、编写页⾯的 wxss ⽂件,设置页⾯样式。
.map_container{
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
}
……
⽰例将当前位置以 marker 的形式显⽰在地图上,并通过逆地理编码请求,获取该位置的详细的地址信息,以⽂本形式显⽰。运⾏程序,效果如下:
获取实时天⽓数据
查询您当前定位城市的实时天⽓情况,帮助您合理安排出⾏。
实现天⽓查询功能的步骤如下:
1、在页⾯的 js ⽂件中,引⼊amap-wx.js ⽂件,实例化 AMapWX 对象,并调⽤ getWeather ⽅法获取搜索数据,代码如下:
var amapFile = require('path/to/amap-wx.js');//如:../../libs/amap-wx.js
Page({
onLoad: function() {
var that = this;
var myAmapFun = new amapFile.AMapWX({key:'⾼德Key'});
success: function(data){
//成功回调
},
fail: function(info){
//失败回调
console.log(info)
}
})
}
})
2、编写页⾯的 wxml ⽂件,搭建页⾯结构。
<view class="container">
<!--定义页⾯结构,使⽤⽂本组件或其他组件 -->
</view>
3、编写页⾯的 wxss ⽂件,设置页⾯样式。
.container{
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
background: #4D8AD7;
color: #fff;
font-size: 18px;
padding-top: 200rpx;
padding-left: 150rpx;
}
……
⽰例将天⽓情况以⽂本形式显⽰。运⾏程序,效果如下:
demo下载:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论