uniapp获取当前位置(定位-经纬度及城市信息)

uniapp集成方法,跟小程序wx.getLocation不同,可直接获取经纬度及城市信息(当然你也可以先获取经纬度再解析成具体城市) 

uni.getLocation({
			    type: 'wgs84',
				geocode:true,//设置该参数为true可直接获取经纬度及城市信息
			    success: function (res) {
					console.log(res)
					that.addrDel = res;
			    },
				fail: function () {
					uni.showToast({
					    title: '获取地址失败,将导致部分功能不可用',
						icon:'none'
					});
				}
			});

注意:
1.高德地图APP端仅支持gcj02

2.近期发现,iOS就算geocode:true也无法返回address等城市具体信息,只有经纬度;
iOS需要多次调用才能返回address信息,官方说这个bug更新了,需要升级 HBuilderX 3.0.0+ 版本

3.有人说iOS返回的信息是wgs84的坐标,需要将wgs84转换成gcj02坐标(目前没有仔细去测,有发现坐标不准确的可以自行去转换试一下,以下是转换方法)
转换方法:
    npm install下载作为node模块引入

npm install wgs2mars --save-dev

    然后在项目中引入

var transform = require('wgs2mars');
var gcjloc = transform(119.3122312,26.0240049);// 返回{lng: 119.31705425869873, lat: 26.02096344048847}

地图配置:

开启Maps权限:manifest.json文件中选择App模块配置,勾选Maps,选择高德或百度(官方推荐高德,我这里也是使用的高德地图)

地图配置:参考文档 地图插件配置 - DCloud问答

配置地图很快,注册个账号,根据文档操作就行,最好去生成个keystore文件,包名就是打包用的包名,ios的如果暂时不知道可以随便填一个,后面可以修改的

后台MySQL根据经纬度查询附近的地址信息,可参考本人另一篇文章 MySQL获取附近的人 地点范围限制

  • 8
    点赞
  • 89
    收藏
    觉得还不错? 一键收藏
  • 19
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 19
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值