[英]NFC Mifare Ultralight Read/Write for plain Java Desktop app using ACR122
在咨询了许多关于stackoverflow的线程之后,我仍然没有找到在Java应用程序中使用ACS ACR122 Usb智能卡读取器读取/写入MiFare Ultralight或Classic NFC卡的有效“示例”。当然,我尝试咨询NXP或ACS的文档,但仍无法“简单地”读取/写入数据块。
有很多Android特定的库,但是没有任何简单的旧的J2SE库可以简化MiFare通信(使用javax.smartcardio和APDU命令...)
谁能给我一些真正的好和有用的指针:
任何帮助都非常有用。
开发是通过以下方式完成的:
我编写了一个小型Java(1.7+)程序,以使用ACS ACR122U转储(并写入)MiFare Classic 1K标签。 它在GitHub上可用 。 它在后台使用了一个普通的旧的J2SE库NFCTools 。
NFCTools通过管理所有十六进制/ APDU内容帮助您与NFC卡通信。 它带有许多示例 。 但是我不知道主要开发者是否仍然想要维护它。 例如,为了重构Mifare支持,他将许多Mifare类标记为不推荐使用,但现在仍在进行中,为期两年。 从邮件列表中 :
我首先写了对mifare经典卡的支持,似乎使用这些类来描述存储区是一个好主意。 但是,当我想添加对ultralight标签的支持时,上述类将无法工作。 有了超轻标签,我决定使用一种新方法并创建org.nfctools.mf.ul.MemoryLayout类。 我认为这是可行的方法,因此我将MfCard类标记为已弃用。
尽管处于这种中间状态,它仍支持许多阅读器和标签格式。 这些示例非常有用。 然后,如果您有一些特定的要求,我建议您为这个项目做出贡献或分叉它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.