繁体   English   中英

如何正确启动与Mifare Ultralight C的连接?

[英]How to properly start a connection with a Mifare Ultralight C?

我试图在Mifare Ultralight C上启动3DES协议。在产品数据表中,他们指定您必须通过发送命令1A进行启动(并且我发现所有要求此信息的帖子都重定向到: Android:使用NXP MiFare进行身份验证超轻C )。

因此,我尝试在下面的代码中执行类似的操作:

nfca.connect();
byte[] authData = new byte[] { 0x1A, 0x00};
encRndB = nfca.transceive(authData);

但是在收发操作中,我总是会遇到以下错误:

W / System.err:android.nfc.TagLostException:标记丢失。

我是在做错事还是应该以其他方式做?

获取TagLostException以响应命令可能意味着两件事:

  1. 与标签的通信实际上已中断(通过撕裂标签)或由于读取器与标签之间的耦合不良而中断。
  2. 标记不支持该命令,并且使用被动NACK进行“响应”(即,它没有响应以生成超时)。 如果类型2标记收到不支持的命令,则可能会出现这种情况。

因此,第二种情况清楚地表明该标签不支持MIFARE Ultralight C身份验证命令。 这意味着该标签可能不是MIFARE Ultralight C标签。 您可以检查“ 区分不同类型的MIFARE Ultralight”作为指纹识别实际标签类型的起点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM