【2022-2-12】uniapp和地图的key申请与参考学习文档

底层引擎

<map> 组件在不同平台的底层引擎是不同的:
微信小程序为腾讯地图;
H5为腾讯地图或谷歌地图;
App、支付宝小程序为高德地图;
百度小程序、快应用为百度地图。
app-vue也可以使用百度地图,在manifest中配置,打包后生效,但app-nvue只支持高德地图
另外选择地图、查看地图位置的API也仅支持高德地图。App端如无特殊必要,建议使用高德地图。

层级问题

小程序和app-vue中,<map> 组件是由引擎创建的原生组件,它的层级是最高的,不能通过 z-index 控制层级。
<map>上绘制内容,可使用组件自带的marker、controls等属性,也可以使用<cover-view>组件。
App端还可以使用plus.nativeObj.view 或 subNVue 绘制原生内容,参考:https://uniapp.dcloud.io/component/native-component
另外App端nvue文件不存在层级问题。
从微信基础库2.8.3开始,支持map组件的同层渲染,不再有层级问题。ps:这句说的是vue还是nvue?

App端推荐使用nvue

  • vue有层级问题:小程序和app-vue中, 组件是由引擎创建的原生组件,它的层级是最高的,不能通过 z-index 控制层级。nvue没有层级问题。
  • map 组件默认的api是参考微信小程序的,如需要使用plus.map,可以通过 g e t A p p M a p 获 取 原 生 地 图 对 象 。 n v u e 无 法 使 用 ‘ getAppMap获取原生地图对象。nvue无法使用` getAppMapnvue使getAppMap,nvue的map组件不是plus.map` 对象
  • map 组件使用的经纬度是国测局坐标,调用 uni.getLocation 接口需要指定 type 为 gcj02
  • ios nvue Color 不支持 ARGB 十六进制,使用 rgba(r,g,b,a) 代替
  • 只支持 只支持flex布局
  • 阻止冒泡:https://www.freesion.com/article/4461997630/
  • nvue修改字体的样式只能写在text标签
    样式参考:https://www.cnblogs.com/cyhsmile/p/13925477.html

/*错误*/
border: 1px solid #ccc;
/*正确*/
border-width: 1px;
border-style: solid;
border-color: #ccc;

uniapp如果需要使用第三方的地图,需要先到开发平台申请key

应用打包时使用证书的指纹字符串(SHA1)

HBuilderX云端打包选择“使用自有证书”或本地离线打包时,填写应用使用证书的SHA1,查看证书的信息获取指纹中SHA1值,参考:https://ask.dcloud.net.cn/article/35777#keyinfo

Android平台签名证书(.keystore)生成指南
keytool -genkey -alias testalias -keyalg RSA -keysize 2048 -validity 36500 -keystore test.keystore

testalias是证书别名,可修改为自己想设置的字符,建议使用英文字母和数字
test.keystore是证书文件名称,可修改为自己想设置的文件名称,也可以指定完整文件路径
36500是证书的有效期,表示100年有效期,单位天,建议时间设置长一点,避免证书过期

keytool -list -v -keystore test.keystore  
Enter keystore password: //输入密码,回车

iOS平台签名证书(.profile)生成指南

网上查资料说是要去苹果开发平台上申请

map组件

近期新增功能

  • 支持点聚合,适用于marker过多场景。
  • 支持彩虹蚯蚓线,常用于路线规划场景。
  • 覆盖物支持调整与其它地图元素的压盖关系。
  • 支持marker(小车)平移动画,适用于轨迹回放场景。

点聚合

当地图上需要展示的标记点 marker 过多时,可能会导致界面上 marker 出现压盖,展示不全,并导致整体性能变差。针对此类问题,推出点聚合能力。
使用流程如下:
MapContext.initMarkerCluster 对聚合点进行初始化配置(可选);
MapContext.addMarkers 指定参与聚合的 marker;
MapContext.on('markerClusterCreate', callback) 触发时,通过 MapContext.addMarkers 更新聚合簇的样式 (可选);
MapContext.removeMarkers 移除参与聚合的 marker;

彩虹蚯蚓线-----------polyline

兼容性:App-nvue 3.1.0+、微信小程序
如:

this.polyline = [{
	points: points,
	arrowLine:true,
	color: "#0091ff",
	// colorList:[],//彩虹蚯蚓线---路线规划,设置之后,上面的color将被覆盖
	width: 6
}]

mapAPI

mapSearch 模块(仅app-nvue支持

1、reverseGeocode(Object,callback);反向地理编码
2、poiSearchNearBy(Object,callback);周边搜索
3、poiKeywordsSearch(Object,callback); 关键字搜索


系统定位

uniapp新增了系统定位,系统定位有的机型不支持。3.3.0 版本以上 优化系统定位模块,可不使用三方定位SDK的进行高精度定位,具体参考:系统定位

系统定位调用设备的操作系统提供的定位服务,只支持wgs84坐标系,不同设备对定位功能支持的情况有所差异。

在这里插入图片描述

如何设置途径点以及途径点的数据格式

waypoints="108.936799,34.245842;108.973306,34.244767;109.013335,34.249303";

参考:
uniapp map组件:https://uniapp.dcloud.io/component/map
高德地图开放平台:https://console.amap.com/dev/index
地图插件配置:如何申请地图的key:https://ask.dcloud.net.cn/article/29
Android平台签名证书(.keystore)生成指南:https://ask.dcloud.net.cn/article/35777#keyinfo
uni.createMapContext(mapId,this):https://uniapp.dcloud.io/api/location/map?id=createmapcontext
mapSearch 模块(仅app-nvue支持):https://uniapp.dcloud.io/api/location/map?id=mapsearch-%E6%A8%A1%E5%9D%97%E4%BB%85app-nvue%E6%94%AF%E6%8C%81
nvue map 更换箭头图标格式:https://ask.dcloud.net.cn/article/37901

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在uniapp中使用高德地图打车功能,你需要进行以下步骤: 1. 在Uni-app项目中引入高德地图的SDK。根据你提供的代码摘要,你可以通过在项目中引入amap-wx.js文件来实现。引入方法如下: ``` import amapFile from './../../util/amap-wx.js' ``` 确保amapFile文件路径正确。 2. 在页面的Vue实例中获取高德地图的密钥(key)。根据你提供的代码摘要,你可以使用以下代码获取密钥: ``` var that = this; let myAmapFun = new amapFile.AMapWX({key:this.key}); ``` 其中,this.key是你在高德地图申请的密钥。 3. 使用高德地图的打车功能。根据高德地图SDK提供的文档,你可以通过调用相应的方法来使用打车功能。例如,使用`getRidingRoute`方法来获取骑行路线。具体的调用方法和参数设置,请参考高德地图SDK的文档。 需要注意的是,上述步骤仅提供了使用高德地图打车功能的基本框架,具体的功能实现还需要根据你的项目需求进行相应的开发和调试。同时,请注意保护你的高德地图密钥,避免泄露敏感信息。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [在uniapp做高德地图,发布为h5网页](https://download.csdn.net/download/a12336487213/13112822)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [uniapp调用高德地图实现路线规划](https://blog.csdn.net/weixin_39389758/article/details/103540313)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值