Java IsoDep.收发器(命令)以[110,0]字节响应?
我使用的是Java IsoDep.收发器(命令)以[110,0]字节响应?,java,android,nfc,apdu,ndef,Java,Android,Nfc,Apdu,Ndef,我使用的是NFC标签,它发现了ISO、NFCA和NDEF技术。有信息要从芯片读取,我试图访问内存,但我用来与标签通信的大多数命令都以[110,0]字节响应。我找不到这意味着什么,其中一些人的回答是[109,0]或[106,-122]。通常[110,0]。这些数据存储在标准NDEF内容之外 我找不到关于这种反应的任何信息,也许这是一种错误。也许我误解了IsoDep协议,但它看起来很简单: Tag tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TA
NFC
标签,它发现了ISO、NFCA和NDEF
技术。有信息要从芯片读取,我试图访问内存
,但我用来与标签通信的大多数命令
都以[110,0]
字节响应。我找不到这意味着什么,其中一些人的回答是[109,0]
或[106,-122]
。通常[110,0]
。这些数据存储在标准NDEF
内容之外
我找不到关于这种反应的任何信息,也许这是一种错误。也许我误解了IsoDep协议,但它看起来很简单:
Tag tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);
IsoDep iso = IsoDep.get(tag);
byte[] mMaster = iso.transceive(CommandFactory.GET_MASTER_APP);
byte[] mApplciation = iso
.transceive(CommandFactory.SELECT_APPLICATION);
AFAIK是“无状态”协议,所以不需要按特定顺序发送命令
有什么想法吗?如果Android为标签显示NfcA+IsoDep+Ndef标签技术,这意味着该标签是NFC论坛类型4标签。注意,与类型4标记的通信根本不是无状态的。标记包含符合ISO/IEC 7816-4的文件系统结构,因此您首先必须选择NDEF标记应用程序(“目录”),然后在该应用程序中选择某个文件(例如,能力容器或NDEF数据文件),然后您可以对该文件执行读/写操作
您在对命令APDU(APDU是ISO/IEC 7816-4中定义的应用协议数据单元,这就是您在ISO-DEP上使用类型4标记时所看到的)的响应是由状态字组成的响应APDU。在你的情况下,状态词是
- [110,0]或无符号十六进制
6E 00
:不支持命令类
- [109,0]或无符号十六进制
6D 00
:不支持指令代码
- [106,-112]或无符号十六进制
6A 90
:这是一个奇怪的(非标准)状态代码。典型的代码是6A82
([106,-126]),这意味着找不到文件或应用程序