【问题标题】:Read NDEF message with external NFC reader ACR1252使用外部 NFC 阅读器 ACR1252 读取 NDEF 消息
【发布时间】:2018-03-12 05:44:09
【问题描述】:

我正在使用以下命令从 Mifare Ultralight 标签中读取二进制块:FF B0 00 01 04

但现在我想使用 ACR1252 NFC 阅读器来精确存储在 Mifare Ultralight 标签中的 NDEF 消息。我必须使用哪个命令来获取完整的 NDEF 消息? NDEF消息存放在标签的哪个位置?

【问题讨论】:

    标签: android nfc mifare apdu ndef


    【解决方案1】:

    MIFARE Ultralight 标签映射到 NFC Forum Type 2 Tag Operation specification(断开的链接,here is an alternative。因此,为了从此类标签中提取 NDEF 消息,您需要遵循定义的读取过程按照那个规范。

    您已经为您的阅读器找到了读取命令:

    FF B0 00 BLOCK_NUMBER 10

    使用该命令(注意长度字段的值 0x10),您可以读取从 BLOCK_NUMBER 开始的 4 个连续块。

    然后您将首先读取功能容器(位于块 3):

    FF B0 00 03 10

    前 4 个字节(1 个块)是能力容器:

    • 字节 0 设置为“神奇”值0xE1,表示标签使用遵循 NFC 论坛类型 2 标签操作规范的 NDEF 映射。
    • 字节 1 表示映射版本。
    • 字节2表示标签的内存大小。
    • 字节 3 表示访问限制。

    一旦您验证了标记与 NDEF 映射规范匹配,您就可以从块 4 开始读取数据(您已经使用上述命令读取了块 4-6)。这些块包含带有标记 0x03 的 TLV 结构中的 NDEF 消息。有关 TLV 结构的详细信息,请参阅 Writing NDEF data to NTAG216 tag using low-level NFC communication methods。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-23
      • 1970-01-01
      • 1970-01-01
      • 2022-01-04
      • 1970-01-01
      • 2012-05-03
      相关资源
      最近更新 更多