uniapp踩坑(四):android中引入高德地图,实时定位(精度)遇到的问题及解决方法

您所在的位置:网站首页 高精度地图app uniapp踩坑(四):android中引入高德地图,实时定位(精度)遇到的问题及解决方法

uniapp踩坑(四):android中引入高德地图,实时定位(精度)遇到的问题及解决方法

2023-11-10 23:09| 来源: 网络整理| 查看: 265

一、hbuilder直接连手机测试(要不要高德的key都可以) 1、测试:没有申请高德地图的key,同时在代码中也没有引入key,但是定位可以实现,且精确。 2、存在疑问:那申不申请key,代码中引不引入key,同时在manifest.json中不配置maps好像对定位精准度都没有影响(确实如此,不用)。 3、解决及原因: uniapp官网目前在安卓平台上集成的是高德地图,直接使用uni.getlocation就可以获取到定位,无需引入key。 4、代码如下:

uni.getLocation({ // map组件默认为国测局坐标gcj02,调用 uni.getLocation返回结果传递给组件时,需指定 type 为 gcj02 type: 'gcj02', geocode: true, success: ({ longitude, latitude }) => { // 定位得到的经纬度 console.log('当前位置的经度:' + longitude) console.log('当前位置的纬度:' + latitude) this.longitude = longitude this.latitude = latitude // 画出定位位置 this.markers[0] = { longitude, latitude, title: '我的位置', iconPath: '/static/images/icons/myLocation.png' } } })

二、运行到自定义基座上(必须配置高德地图) 1、必须有高德申请的key 在高德开放平台提交资料,获取key(小程序申请小程序的key,android申请android的key,ios对应ios的key,不可混用)(注意,自定义基座调试时,必须appid,包名,key都对应,否则报签名不一致) 2、manifest.json中必须配置 在这里插入图片描述 我这里勾选了自动添加第三方所需要的权限,所以这部分就不用管,若没有勾选,则需要自己手动添加。 在这里插入图片描述 3、以下三个方法(uniapp,web,和小程序)定位精度相似

采用uni.getlocation和plus.geolocation.watchPosition,和 小程序中的amapPlugin.getRegeo方法,其对应的定位精度相似。

三、踩坑之处: 刚开始做的是小程序(引入的是小程序的key,和amaps-wx.js文件,高德官方就有),然后定位不准,误差在500米左右(误差太大了)。然后就想着是不是定位的方法不对,于是就试上面三种方法(主要是想看这三种那个定位更准),发现连手机测试后三个方法的定位都差不多,且精准,但采用自定义基座测试后,就有误差,最后,发现是自己没有在manifest.json中配置maps,当然,配置正确的appid,key,和包名后基座测试,一切ok。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3