我是 NFC Android 的新手,并且在为 NTAG213 设置密码后尝试用 NTAG213 写入时,我已经被困了好几天
但它失败了,我不知道会发生什么有人可以帮助我
更新了有关代码的更多信息
TenantTOTP-userb@test.com
答案 0 :(得分:0)
更新
既然我们看到了更多代码,首先要开始的是,所有这些 transceive
命令无论成功与否都会返回一个值。
因此,最好对发送到标签的所有这些命令进行错误检查,方法是检查回流阀以查看哪个位出错。
从标签的数据表中,ACK
和 NAK
值是
表 23.ACK 和 NAK 值代码(4 位)ACK/NAK
啊确认(ACK)
0h NAK 无效参数(即无效页面地址)
1h NAK 用于奇偶校验或 CRC 错误
4h NAK 无效认证计数器溢出
5h NAK 表示 EEPROM 写错误
所以返回值应该总是Ah
原创
默认情况下,仅在标签上设置密码并不能保护任何内容。
您还需要设置 AUTH0
字节(ntag213 上第 0x29h 页的字节 3 - 请参阅标签数据表了解详细信息),因为默认情况下,您刚刚设置的密码不会保护任何内存页。
您需要将该值从保护页面 0xFFh
及以上(即无页面)更改为至少保护页面 0x04h(或 0x00h)及以上,以对 NDEF 数据的访问产生任何影响。
改变页 0x29h 的值 Byte 3 是通过标准写命令完成的,因此读取页 0x29h,将读取的 4 个字节的最后一个字节更改并写回该页。
您还应该知道访问字节内存地址的 PROT
位在读取和写入之间更改以进行密码保护(默认为密码保护写入访问),这也由标准写入命令更改到正确的内存页面。