收藏
回答

getLocation经常返回上次附近的位置信息

问题模块 框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
API和组件 小程序 Bug wx.getLocation 客户端 6.7.2 2.2.5

在A点,通过wx.getLocation获取位置后,移动到另外一个位置B,再次wx.getLocation(),获取到的位置是A附近的位置,用wx.openLocation()打开地图,过一会儿(有时几秒、有时几十秒)后,又直接移到正确位置上去了;相应的getLocatoin的数据也成正确的了

整体感觉:位置移动后,getLocation返回的数据不对,要等一会儿,或者用openLocation打开一次地图再等一会儿,再次调用才返回正确的数据


备注:

(1)A点和B点相差3公里以上,开车移动,出现此问题的概率比较大,自己测试了5次,有3次不对,客户反馈错误率90%

(2)如果有几十米或一二百米误差,都能接受,现在误差是几公里

(3)静止不动,getLocation可以返回正常的数据,误差几十米到一二百米不等,可以接受

(4)测试手机:小米5s、iPhone7Plus


问下,wx.getLocation(),如何能保证每次获取的都是当前位置的信息?而且是第一次调用时

有小误差可以接受


wx.getLocation({
 
    type: 'gcj02',
 
    success: function (res) {
 
        var latitude = res.latitude
 
        var longitude = res.longitude
 
        wx.openLocation({
 
            latitude: latitude,
 
            longitude: longitude,
 
            scale: 28
 
        })
 
    }
 
})



最后一次编辑于  2018-09-05  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏关注问题回答

13 个回答

  • 老张
    老张
    2018-09-06

    同样的问题。

    我个人猜测的原因是:每次wx.getLocation都是先读取缓存的上次位置信息,返回结果,然后再按照某种机制后台获取当前的位置信息,更新缓存。

    反正我没搞懂其中的真正的机制,所以一般会在app.js,无用地调用一次wx.getLocation,返回结果不做任何处理,目前看来好象有点用处。

    2018-09-06
    赞同 22
    回复 1
    • 小易27
      小易27
      2018-09-06

      good,我先试下

      2018-09-06
      赞同
      回复
  • 小易27
    小易27
    2018-09-05

    顶一下

    2018-09-05
    赞同
    回复 1
    • 小易27
      小易27
      2018-09-05

      再顶一下

      2018-09-05
      赞同
      回复
  • 凌云摘星傲苍穹
    凌云摘星傲苍穹
    2018-09-05

    多次调用之间的时间间隔有多少?

    2018-09-05
    赞同
    回复 5
    • 小易27
      小易27
      2018-09-05

      有时几秒,有时几十秒,不一定。过一会儿一般能正确

      2018-09-05
      赞同
      回复
    • 凌云摘星傲苍穹
      凌云摘星傲苍穹
      2018-09-05回复小易27

      第二次获取的时候,前面的获取结束了吗?

      2018-09-05
      赞同
      回复
    • 小易27
      小易27
      2018-09-05回复凌云摘星傲苍穹

      结束了,success回调后

      2018-09-05
      赞同
      回复
    • 李启超
      李启超
      2018-10-11回复凌云摘星傲苍穹

      请问安卓机器上wx.getLocation会返回上次缓存的位置吗?

      我这边做的导航小程序有位置更新不及时问题。

      2018-10-11
      赞同
      回复
    • 扬
      05-31

      我这边也有这个问题,从A点出发然后走到B点 大致十分钟出头,到达B点再次调用时返回的还是A点附近的经纬度

      05-31
      赞同
      回复
  • 。
    2018-09-06

    顶一下


    2018-09-06
    赞同
    回复
  • 七月的风
    七月的风
    03-07

    顶一下


    03-07
    赞同
    回复
  • 扬
    05-31

    兄弟你的问题解决了吗?怎么解决的啊

    05-31
    赞同
    回复