收藏
回答

蓝牙ibeacon

框架类型 问题类型 API/组件名称 终端类型 操作系统 微信版本 基础库版本
小程序 需求 wx.startBeaconDiscovery 客户端 Android 6.6.6 1.9.94


wx.startBeaconDiscovery 是循环调用 ?还是只调用一次

例如 : setInterval(   function(){

    wx.startBeaconDiscovery ()

     wx.getBeacon()  or   wx.onBeaconUpdate()

wx.stopBeaconDiscovery()

}      ,1000)


还是       wx.startBeaconDiscovery ();

setInterval( function(){ wx.getBeacon() } ,1000)

        or       wx.onBeaconUpdate();

longtime......  wx.stopBeaconDiscovery();


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

3 个回答

  • Tummy
    Tummy
    2018-05-28

    是的。

    ps:重复调用start没有多大意义,调用一次就会持续进行扫描了。

    2018-05-28
    有用
    回复 1
    • 浴风咏归
      浴风咏归
      2018-08-03

      但是请问,不反复调用wx. startBeaconDiscovery会导致beacon只增不减的问题如何解决?

      2018-08-03
      回复
  • ch
    ch
    2018-05-25

    看了 其他相关的问题描述,猜测 API 存的 信息是一个list表单,getBeacon 是得到这个表单,应该只有长度变化,beaconsUpdate 只是更新了这个表单里面有变化的数据。那么如果是想清空表单,就得重新 开启扫描。也不知道对不对。。

    2018-05-25
    有用 1
    回复 2
    • 浴风咏归
      浴风咏归
      2018-08-03

      我也感觉是这样。如果想得到更新的列表,就得不断循环调用wx. startBeaconDiscoverywx.stopBeaconDiscovery , 但这两个API很耗时,实测会导致约30秒的无反应期,在此期间不会返回任何beacon

      2018-08-03
      回复
    • ch
      ch
      2018-08-03

      要控制好 ,开与关的时间差, 地狱调试把

      2018-08-03
      回复
  • 浴风咏归
    浴风咏归
    2018-08-03

    不调用wx.stopBeaconDiscovery关闭存在一个问题,就是已经不在附近的beacon仍然会在

    wx.onBeaconUpdate 或 wx.getBeacons

    调用时返回。似乎存在一个缓存,只增不减。


    必须调用wx.stopBeaconDiscovery,再次调用wx.startBeaconDiscovery,才能清除原来缓存的数据。

    2018-08-03
    有用
    回复
登录 后发表内容