Zebra Android SDK中的错误“ ACCESS_TAG_MEMORY_OVERRUN_ERROR”是什么意思,以及如何解决?

时间:2019-07-03 10:19:03

标签: java android rfid zebra

我正在尝试从标签读取存储库数据,也没有例外,但是操作状态返回“ ACCESS_TAG_MEMORY_OVERRUN_ERROR”

现在所有的标签都会发生这种情况,而官方的SKD RFID Zebra应用程序在尝试读取时有一个超时错误,以前没有出现,因此我想知道我的阅读器是否没有损坏。我很茫然。该文档完全没有解释这些错误的含义,而且几乎没有关于RFID编码的资源。

public String readTag(String tagID){
    String tagId = tagID;
    TagAccess tagAccess = new TagAccess();
    TagAccess.ReadAccessParams readAccessParams = tagAccess.new ReadAccessParams();
    readAccessParams.setCount(4);
    readAccessParams.setMemoryBank(MEMORY_BANK.MEMORY_BANK_USER);
    readAccessParams.setOffset(0);
    try {
        TagData tagData = reader.Actions.TagAccess.readWait(tagId, readAccessParams, null);
        System.out.println("OPERATION STATUS ---> " + tagData.getOpStatus());
        return tagData.getMemoryBankData();
    } catch (InvalidUsageException e) {
        System.out.println("INVALID USAGE EXCEPTION ---> " + e.getInfo());
        e.printStackTrace();
        return "";
    } catch (OperationFailureException e) {
        System.out.println("INVALID USAGE EXCEPTION ---> " + e.getResults());
        e.printStackTrace();
        return "";
    }
}

尽管是Read方法,但我不确定它是否有错,因为它是从http://techdocs.zebra.com/dcs/rfid/android/2-15/tutorials/readaccess/的Zebra指南中复制粘贴的,但我很茫然。它只是一直返回“ null”(尽管我知道它有数据),并给我“ ACCESS_TAG_MEMORY_OVERRUN_ERROR”作为状态。只要知道这意味着什么,就足以使我朝着正确的方向前进。就这样,我只能盲目猜测,这非常令人沮丧。谢谢。

1 个答案:

答案 0 :(得分:0)

发生此错误是因为您尝试读取的字数超出了rfid标签的epc记忆库。 您可以省略

// readAccessParams.setCount(4);

声明。