收藏
回答

onLocationChange时间间隔可以手动调整吗?

onLocationChange默认是每3秒获取一次吗?可以手动修改时间间隔吗

回答关注问题邀请回答
收藏

3 个回答

  • 吕磊
    吕磊
    2021-02-11

      wx.startLocationUpdate({

            success: (res) => {

              wx.onLocationChange((data) => {

                //获取当前时间

                var currentTime =  new Date().getTime();

                //获取上次保存的位置信息

                var oldLocation = wx.getStorageSync('oldLocation');

                //获取上次执行的时间

                var oldTime = wx.getStorageSync('oldTime');

                //将经纬度拼接

                var newLocation = data.latitude+""+data.longitude;

                //判断当前的位置是否和上次位置不一致

                if(oldLocation!=newLocation){

                  //缓存当前最新位置

                  wx.setStorageSync('oldLocation',newLocation);

                  //缓存当前执行的时间

                  wx.setStorageSync('oldTime',currentTime);

                  //如果本次执行时间距离上次时间超过5s,将位置信息上传后台

                  if(currentTime-oldTime>5000){

                  }

                }

              });

              console.log('startLocationUpdate-res', res)

            },

            fail: (err) => {

              that.setData({

                modalName: 'DialogModal1'

              });

            }

          })


    2021-02-11
    有用
    回复
  • 灿灿
    灿灿
    2020-07-22

    请问有解决办法么?

    2020-07-22
    有用
    回复
  • Anker.
    Anker.
    2020-07-02

    应该是位置变化了就会触发(监听实时地理位置变化事件)

    2020-07-02
    有用
    回复 1
    • Yien
      Yien
      2020-07-02
      我保持手机位置不动,也在向后台请求呢
      2020-07-02
      1
      回复
登录 后发表内容
问题标签