关于卡模拟接口onHCEMessage始终触发不了的问题
发布于 6 年前 作者 liugang 8858 次浏览 来自 问答

一、这是我用TagInfo读出的门禁卡信息,信息上说明支持ISO 14443-3协议

二、微信官方文档:HCE卡模拟能力

n支持的卡协议

ISO 14443、ISO7816

三、如上2点应该能说明我的门禁卡协议与微信HCE支持的协议是兼容的,但当与门禁锁对接时wx.onHCEMessage却怎么也触发不了,如下是简单的测试代码(官方文档提供的):

    const buffer = new ArrayBuffer(1)

    const dataView = new DataView(buffer)

    dataView.setUint8(0, 0)

    wx.startHCE({

      aid_list: [‘F222222222’],

      success(res) {

        console.log(‘starthce success.’, res);  //这个能正常输出,说明手机是支持NFC且已打开配置

        wx.onHCEMessage(function (res) {

          console.log(‘onHCEMessage.’, res);    // 这里却怎么也触发不了

          if (res.messageType === 1) {

            wx.sendHCEMessage({ data: buffer })

          }

        })

      }

    })

四、与多家出租屋的大门锁都对触了下,也没反应,难道大家的门禁锁都不支持ISO14443、ISO7816协议?

真不知道问题出在哪里,想在小程序中做个模拟门禁卡的功能,卡在这儿了。

3 回复

问题解决了吗

aid_list要填写正确

AID确实很重要,现在的问题应该回到如何获取读卡器(在这儿是门禁锁)的AID,有哪位大佬做过类似功能的,提供下线索。

回到顶部