在Android中同时读取多个NFC标签
新的2.3.3 SDK包括改进的NFC支持,我想编写一个依赖于此的应用程序。最后,我希望能够从同时进入该字段的多个标签中读取数据,但Android似乎仅在第一个进入该字段的标签上触发 - 后续的被忽略。
从阅读NFC规范(ISO / IEC 14443-3)我正在使用的标签(Mifare Classic),我应该能够向标签发送'halt'命令,这将导致它停止响应,并允许我要阅读该字段中的下一个标记。 Android不直接在任何
TagTechnology
子类上支持halt命令,所以我尝试使用transceive(new byte[] {0x50, 0x00})
直接发送它。这会抛出一个IOException
,信息'收发失败'。
不可否认,我正在从主线程中完成所有这些,我理解这是一个坏主意,但我只想尽可能轻松地测试这个概念。
是否可以同时与现场的多个标签进行通信?我究竟做错了什么?
没有找到相关结果
已邀请:
3 个回复
死狸蔽垂藐
中发送正确的字节,你可能会暂停卡,就像你现在要做的那样。但是,由于停止(或者更确切地说,您尝试发送的HLTA)是ISO14443-3A命令,这将无法通过MifareClassic接口 - 它使用“加密”管道。不幸的是,通过NfcA接口直接传输也不适用于当前的堆栈。 即使您可以让卡停止,这也不会自动导致手机中的NFC芯片恢复轮询新标签 - 因为您正在“绕过”堆栈。
捕暑句簿姓
祁澈盘哼颗