繁体   English   中英

Android:卡仿真 - 使用PN532 nfc模块读取ndef消息

[英]Android: card emulation - read ndef message with PN532 nfc module

我有一个LG D320n Android手机,elechouse的PN532 nfc模块和Stollmann的NFCPlayer,我可以正确阅读NFC标签。

我从这里测试了一个样本: https//github.com/grundid/host-card-emulation-sample

它工作正常,当我读取一个Android设备作为标签与另一个Android设备作为阅读器。 但我无法通过NFCPlayer将Android设备作为PN532阅读器的标签阅读。 我希望读者从Android设备读取NDEF消息作为标签,但NFCPlayer甚至不能识别Android设备。 我想我必须在Android方面做一些修改,但我无法弄明白该怎么做。 我想我对NFC通信和HCE的工作方式知之甚少,尽管我读过这篇文章: https//developer.android.com/guide/topics/connectivity/nfc/hce.html

我真的很感激任何可以帮助我理解我在这里缺少什么的指南。

NFCPlayer应该将grundid示例应用程序发现为“遗留标记”(标签“R / W:Legacy”),因为它没有实现NDEF抽象层。 在该选项卡上,您可以使用模拟智能卡交换PDU(在HCE情况下为APDU)。 示例应用程序的有效APDU将是

00 A4 04 00 07 F0010203040506 00

您可以通过在PDU字段中键入并点击“Exch.PDU”按钮来发送此APDU。 请注意,grundid HCE应用程序甚至不实现ISO / IEC 7816-4响应APDU。 因此,您可能会遇到一些非接触式智能卡读卡器的麻烦。

如果您希望模拟智能卡被NFCPlayer发现为包含NDEF消息的NFC论坛类型4标签(选项卡“R / W:NDEF”),则需要实施NFC论坛类型4标签操作规范(由NFC论坛 。该规范定义了数据必须如何存储在(仿真的)ISO / IEC 14443-4智能卡上才能被解释为NDEF标签。作为起点,您可以在HCE示例应用程序上使用此NDEF (但质量和可靠性)该代码是有问题的。这个例子实现了智能卡文件系统来存储NDEF数据。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM