我的代码如下“代码丢失”异常。但是,尽管有例外,数据仍然成功写入。为什么在抛出异常的情况下成功写入数据?
nfc.connect();
byte[] arrByt = new byte[7];
arrByt[0] = 0x01; //Command Flag 0x02 works fine
arrByt[1] = 0x21;
arrByt[2] = 0x06;
arrByt[3] = 0x00;
arrByt[4] = 0x00;
arrByt[5] = 0x00;
arrByt[6] = 0x00;
byte[] response = nfc.transceive(arrByt);
我的NFC芯片
Type V (ISO/IEC 15693 / Vicinity), Tag Type SL2 ICS2001 (ICODE SLI), Manufacturer NXP Semiconductors (Germany)
here talked over 但没有结果:(
答案 0 :(得分:3)
当NfcV标签返回非成功代码时,Android的NFC堆栈假设它是一个例外并且它抛出“Tag is Lost”。
要避免此异常,可以使用命令0x02,正确的字节数组变为:
arrByte = {0x02,0x21,0x06,0x00,0x00,0x00,0x00};其中0x02是标志命令,0x21是写单块命令,0x06是块号,重映射是4字节数据。希望这会有所帮助。