[英]Android: card emulation - read ndef message with PN532 nfc module
[英]Android 4.4.2, PN532 NFC reader and NFC Card emulation
这取决于您拥有的Nexus平板电脑:
Nexus 7(第一代/ 2012版):该设备使用恩智浦的PN544 NFC控制器。 似乎目前无法在这些设备上使用Android 4.4+执行基于主机的卡仿真(请参阅此问题和我的答案 )。
Nexus 7(第二代/ 2013版)和Nexus 10:这些设备使用Broadcom的NFC控制器。 因此,您可以使用Android 4.4的HCE API来模拟非接触式智能卡。
使用Android的HCE API,您将模拟ISO 14443-4智能卡,并且只能使用ISO 7816-4中定义的应用程序选择和APDU格式进行通信。 您首先要创建并注册HCE服务(请参阅API指南 )。 然后,您可以使用服务的processCommandApdu()
方法处理传入的APDU(请参阅此答案 )。
如果您的读者端应用程序目前仅处理MIFARE Classic和Ultralight,则必须将其扩展为与基于ISO 14443-4 / APDU的智能卡进行通信。 (在ANdroid的HCE API之上,不能对基于非APDU的卡(如MIFARE Classic和Ultralight)进行仿真。)PN532通常会为您处理大部分内容,因此一旦您发现这样的智能卡(例如使用InListPassiveTarget
),应自动处理ISO 14443-4传输协议,您可以使用InDataExchange
命令直接发送APDU命令。
如果您想通过HCE交换NDEF消息,一旦您启动并运行基于APDU的通信,您可以在Android HCE服务中实现NFC论坛的Type 4标签操作规范(从NFC论坛的网站获取 )以模拟类型4 NDEF标签。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.