nfc reader(acr122)如何检测我的手机?

时间:2014-02-09 06:50:35

标签: android nfc contactless-smartcard hce nfc-p2p

我买的ACR122U SDK有一个acr122读卡器,cd和卡,我试着测试它。读卡器通过将LED指示灯从红色变为绿色来检测卡片,但当我在读卡器附近拿走手机(NFC已打开)时,没有任何事情发生。

如何让读卡器检测到我的手机?我必须将java卡小程序安装到我的手机中才能让我的手机充当非接触式卡?

2 个答案:

答案 0 :(得分:2)

使用ACR122U NFC读卡器有三种选择:

  • ACR122U采用点对点模式:在点对点模式下,您可以使用Android的内置Beam功能与Android设备通信。在读者方面,您需要实现SNEP服务(以及底层的LLCP + NFCIP-1协议栈)。例如,您可以使用ISMB-SNEPNFC Toolsnfcpy找到示例。

  • ACR122U处于卡仿真模式:在卡仿真模式下,ACR122U可用于模拟标签/非接触式智能卡,Android设备可以像任何其他NFC标签/非接触式智能卡一样检测到该标签/非接触式智能卡。例如,您可以使用libnfc找到示例。

  • ACR122U处于读写器模式:在读写器模式下,ACR122U可以与非接触式智能卡进行通信。这涉及takumar已经在他的答案中发布的方向。虽然你很难满足安全元素的要求(由于缺乏访问权限甚至缺乏SE而通常很困难),但最近的Android版本(特别是CyanogenMod 9.1+或Android 4.4+),您可以选择使用主机卡仿真(HCE)模式。有关在Android 4.4及更高版本中的工作原理,请参阅Android documentation

答案 1 :(得分:0)

您的手机必须启用卡片仿真,而不是全部。此外,您需要确定将卡仿真路由到的位置。这可以是SIM或某些嵌入式安全元素。完成后,您可以考虑将应用程序部署到测试SIM上(您很可能无法获得嵌入式安全元素的密钥)。使用Android的AOSP版本(例如在Nexus 5上)有帮助,因为您可以设置路线。我相信可以在线购买带测试密钥的测试SIM卡。一旦有了,就可以使用GPShell安装应用程序。祝你好运。