2

我是 NFC Android 的新手。现在我正在做关于 NFC 的项目,它必须用安全数据编写 NFC 标签。所以这里我的应用应该支持所有的论坛标签和 MifareClassic、Mifare Unltralight 标签。我从 tapintonfc blogspot 获得了一个样本,它适用于所有 nfc 论坛标签,但不适用于 MifareClassic。所以我在文档中找到了 MifareClassic Tag 中的写入数据。我了解到 MifareClassic 包含 Sectors,每个 Sector 有 4 个块,其中一个块用于存储 keyA、keyB 以进行身份​​验证。所以我的疑问是我可以将联系人数据和通话/短信数据存储到单个 MifareClassic 标签中吗?如果是,如何?我的第二个疑问是 Card 是否会一次存储一个数据(联系人或电话/短信),那么如果我的联系人数据是 400 字节,那么如何将其存储在扇区中。很明显,我们可以使用每个扇区 48 字节的空间。

提前致谢

4

1 回答 1

4

您可以使用 NFC 高级 API 将数据推送到 MifareClassic 标签。

推送数据有两种方式:

  • NDEF 消息(高级方式):我推荐这种方法来推送联系人 VCARD 或类似的数据。NDEF 消息已被定义为推送这些类型的信息

  • 将数据作为 APDU 命令发送,这些命令由 Google 在其 API 中封装,但这种方式需要了解 MifareClassic 内存结构(扇区、块、每个块的身份验证、块的 16 个字节和用于配置访问扇区的第 4 个块):您必须逐字节管理要存储在 Mifare 中的信息

要推送 NDEF 消息(最简单的方式),我建议您阅读本指南:http: //developer.android.com/guide/topics/connectivity/nfc/advanced-nfc.html

要使用 APDU 命令推送数据,请阅读: http ://www.nxp.com/documents/data_sheet/MF1S503x.pdf

理解了那个 PDF 之后,你就会明白如何使用 NFC 低级 API

于 2012-11-30T13:11:06.203 回答