我正在开发一个 Android 应用程序,用于在手机和支持 NFC 的特定芯片之间进行接口,该芯片称为 NF4 芯片,由 EM Microelectronic 制造。这是该芯片数据表的链接:http : //www.emmicroelectronic.com/sites/default/files/public/products/datasheets/nf4-fs.pdf
在数据表的第 3 页中,总结了芯片的存储系统。我需要做的部分工作是在内存中创建一个文件并写入其中。我正在研究这个并使用手机和 NFC 标签对其进行测试。
为了实现我的需要,应用程序将以下 APDU 发送到芯片:
该芯片带有其他与该芯片基本相同的NFC标签/卡,只是没有串行接口。
有一次我用额外的标签(卡片)之一测试我的应用程序。标签不再像以前那样运行了。EM Microelectronic(制造标签)开发的应用程序曾经能够读取和写入标签,但在此事件发生后,EM 应用程序停止执行此操作。
当我进一步调查这个问题时,我发现标签的技术从一开始的(IsoDep、NfcA 和 Ndef)变成了我的应用程序的一次测试会话之后的(IsoDep 和 NfcA)。因此,它基本上不再是 NFC 论坛支持的标签。
我不确定发生了什么,需要解决这个问题并将标签恢复到以前的状态。我还需要了解我的应用程序对标签做了什么使其变成这样,以便在我再次测试时阻止它发生。
我想到的一个理论是,也许当我的应用程序选择的 EF 不是将 NFC 数据存储在标签中的 DF 的子代时,这就是导致问题的原因。也就是说,NFC 专用文件仍在内存中,但未被选为当前文件......我不确定这是否真的会导致我描述的问题。
这是否有意义,或者可能是其他原因?
| 归档时间: |
|
| 查看次数: |
960 次 |
| 最近记录: |