我正在研究 NEXSUS-S_4.0.4,需要读取 typeB(ISO 14443) 卡的数据并显示存储在卡上的一些信息。但是在我的应用程序或从 android-market 下载的任何其他设备上都没有检测到我的卡(例如:来自 NXP 的 NFC 标签信息)。所有其他卡都工作正常..
我提前谢谢你, 问候
这可能只是天线,它可能无法很好地调整您想要阅读的标签。(ISO14443-B 并不常见……)
为确保这不是软件问题,您可以尝试更换天线。为此:
取下 Nexus-S 的后盖。您应该看到天线和 NFC daugterboard 的触点。
取一根约 25 厘米长的隔离线。制作两个绕组,直径约为 4 到 6 厘米,并将其连接到天线引脚。
尝试阅读您的 B 标签。手机现在应该可以检测到标签,并且应该可以通过 IsoDep 进行 IO。
这种简易天线很可能比内置天线工作得更好,因为内置天线非常接近其他降低天线性能的金属部件。
要对 B 类标签正确执行防冲突,您需要提供 AFI(或可能调用 AID)。它是一个单字节,用于定义您正在寻找的应用程序系列。否则标签将不会响应。
诚然,我不太了解 Android NFC 库,但可能有一种方法可以在尝试检测/读取标签时指定这一点。Android 4.4 有一种叫做 reader-mode 的东西,也许可以为给定的 AFI 设置为 Type-B 轮询模式。