uni.getLocation或wx.getLocation精准定位不够精准?逆地址解析!(附完整代码)

1、确保在微信公众平台”开发管理—>地理位置“开通了wx.getLocation()API
2、使用传参需要将提升精度的参数`isHighAccuracy`设置成true,type类型我选择的是GCJ02(火星坐标系),当然为了更加灵活使用使用wgs84(WGS-84坐标系)也是可以的

3,这样你就会得出那么一些地理信息,拿到其中的经纬度

4,但是因为 gcj02 坐标系是一种经过加密偏移的坐标体系,专门用于中国大陆地区,拿到的经纬度不准确

逆地址解析!需要用第三方腾讯地图或高德地图的`逆地址解析API做一个地址转换

废话不多说直接上代码TuT:

	const defaultAddress = ()=>{
		uni.getLocation({
			type: 'GCJ02',
			isHighAccuracy:true,
			success(response) {
				let latitude = response.latitude
				let longitude = response.longitude
				uni.request({
					url: `https://apis.map.qq.com/ws/coord/v1/translate?locations=${latitude},${longitude}&type=1&key=你的key`,
					method: 'GET',
					success(rsp) {
						latitude = rsp.data.locations[0].lat
						longitude = rsp.data.locations[0].lng
						console.log(rsp.data,'精准的很');
					}
				})
	
			},
			fail(err) {
				console.log(err);
			}
		})
	}

这里我使用的是腾讯地图逆地址解析api,腾讯地图位置服务

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值