2744关注8706浏览
<map/>中show-location的定位点与wx.getLocation中返回的数据不匹配,误差巨大!
IOS设备中,误差极小,忽略不计。
android设备中,根据不同的手机型号,误差情况不同。
测试设备:vivo y66,oppo a73t, 小米 mix2
其中vivo y66,oppo a73t存在巨大误差,小米mix2误差很小
问题情况:不是每时每刻都存在巨大误差的,误差会存在一段时间,根据实际位置的不同,误差时间和误差范围也不同。
红色圆形中心点是wx.getLocation()中返回的经纬度,每秒获取一次
地图show-location=true,每秒moveToLocation()一次
地图中心 为<map/>的getCenterLocation()获取的数据
定位中心 为wx.getLocation()获取的数据
测试过程中没有滑动过地图,保证getCenterLocation()的数据就是地图moveToLocation()后的中心
测试开始的时候,需要把地图放大,才能看到圆形
正常情况下的表现如下图:
红色圆形与定位点在相同位置
异常表现如下图:
红色圆形与定位点存在误差
-
至过去的我
2044人对此回答表示赞同
我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多> -
Kenneth
6人对此回答表示赞同
这边没有复现问题,请问我该怎么操作以使代码片段复现问题呢?
展开61回复分享发布于 5年前评论(1)
收起评论
-
Taniya
2人对此回答表示赞同
后面如何解决的呢
展开20回复分享发布于 5年前评论(0)
收起评论
-
北极贝TAN
2人对此回答表示赞同
wx.getLocation()的时候设置下类型(type)为gcj02试试
展开21回复分享发布于 5年前评论(1)
收起评论
-
AvaDJ 2019-02-14 12:05
已经是gcj02的了
回复
-
你需要多台android设备,不同的设备误差范围不同,例如小米mix2误差就很小(在我们可接受范围内),vivoy66与oppoa73t误差就很大(有时候甚至相差数公里),IOS设备误差也非常小