收藏
回答

onShow中或者wx.onAppShow中调用NFC会一直死循环地执行

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug wx.startHCE和wx.getHCEState 客户端 6.5.3 2.4.2

- 当前 Bug 的表现(可附上截图)

在页面onShow中或者wx.onAppShow中调用NFC会一直死循环地执行,这是怎么回事?难道判断NFC状态是跳到其他软件去判断的吗


- 预期表现


- 复现路径


- 提供一个最简复现 Demo



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

3 个回答

  • 社区技术运营专员-娇华
    社区技术运营专员-娇华
    2019-05-22

    你好,麻烦提供出现问题的具体机型、微信版本号、系统版本号,以及能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)

    2019-05-22
    赞同
    回复 2
    • 未雨
      未雨
      2019-05-22

      机型:任何的安卓手机都能复现

      onShow: function() {

      wx.getHCEState({

            success(res) {

              console.log("NFC状态=" + res.errCode);

              if (res.errCode == "0") {

                wx.startHCE({

                  aid_list: ['F222222222'],

                  success(res) {

                    console.log("NFC开启成功");

                  },

                  fail(err) {

                    console.log("NFC开启失败=" + JSON.stringify(err));

                  }

                })

              } else {

              }

            },

            fail(err) {

              console.log("获取NFC状态失败=" + JSON.stringify(err));

            }

          });


      }



      2019-05-22
      回复
    • 社区技术运营专员-娇华
      社区技术运营专员-娇华
      2019-05-22回复未雨

      按照上面的要求一一补全信息哈,thanks

      2019-05-22
      回复
  • angentle
    angentle
    2天前

    确实会出现死循环 回调多次的情况

    目前的解决方法是设置防抖。

    我是用taro, 在这个生命周期里 加个定时器,销毁时清除定时器

    2天前
    赞同
    回复
  • Z.Y
    Z.Y
    02-03
    分享不了
    02-03
    赞同
    回复
登录 后发表内容