NFC

支持 HCE(基于主机的卡模拟)模式,即将安卓手机模拟成实体智能卡。 支持 NFC 读写,即手机作为读卡器使用。

  • 适用机型:支持 NFC 功能,且系统版本为 Android 5.0 及以上的手机
  • 适用卡范围:符合ISO 14443-4 标准的 CPU 卡
  • 支持 Reader/Writer(读取器/写入器)模式,即支持 NFC 设备读取和/或写入被动 NFC 标签和贴纸。
  • 适用机型:支持 NFC 功能,且系统版本为 Android 5.0 及以上的手机
  • 适用范围:
    • 支持NFC-A (ISO 14443-3A)/NFC-B (ISO 14443-3B)/NFC-F (JIS 6319-4)/NFC-V (ISO 15693)/ISO-DEP (ISO 14443-4)标准的读写
    • (部分Android手机)支持MIFARE Classic/MIFARE Ultralight标签的读写
    • 支持对NDEF格式的NFC标签上的NDEF数据的读写

基本流程

以往NFC-A卡片写入apdu指令为例

  • 调用wx.getNFCAdapter()获取NFC适配器实例
  • 调用NFCAdapter.onDiscovered(function callback)注册贴卡监听回调
  • 调用NFCAdapter.startDiscovery(Object object)开始监听贴卡
  • 贴卡,onDiscovered回调
    • 根据onDiscovered回调res对象的techs字段匹配到卡片支持NFC-A标准
    • 通过NFCAdapter.getNfcA()获取NfcA实例
  • 使用NfcA实例进行读写
    • 调用NfcA.connect()和NFC卡片建立连接
    • 调用NfcA.transceive(Object object)往NFC卡片写入apdu指令并接收卡片返回数据
    • 读写完毕,调用NfcA.close()断开连接
  • 调用NFCAdapter.stopDiscovery(Object object)结束监听贴卡