3

我正在编写一个将在平板电脑上运行的应用程序。平板电脑将连接到 ACR1222L NFC 阅读器。

我正在使用他们的 android 库与读者进行交互。我可以检测到 USB 读卡器,也可以读取读卡器的名称。但我正在努力从 NFC 标签中读取数据。事实上,我不知道从哪里开始,使用哪些类/方法。

有没有人已经使用过 ACR1222L 及其 android 库?

一些指导方针、示例代码、教程可以挽救我的生命。

编辑:

好吧,我现在变得更聪明了,我可以读取 UID。这是怎么做的。

@Override
protected void onCreate(Bundle savedInstanceState) {
............... your code
mReader = new Reader(mManager);
    mReader.setOnStateChangeListener(new OnStateChangeListener() {

        @Override
        public void onStateChange(int slotNum, int prevState, int currState) {
        //This command is for the card UID
            byte[] command = {(byte) 0xFF,(byte) 0xCA,0x00,0x00,0x00};
         byte[] response = new byte[300];
         int responseLength;
          if (currState == Reader.CARD_PRESENT) {
 try {
                    mReader.power(slotNum,Reader.CARD_WARM_RESET);
                    mReader.setProtocol(slotNum, Reader.PROTOCOL_T0|     Reader.PROTOCOL_T1);
                    responseLength=mReader.transmit(slotNum,command,     command.length, response,response.length);

 //Here i have the card UID if i send the proper command
                    responsedata=NfcUtils.convertBinToASCII(response);

          }             

 }
}

但我仍在努力从标签中读取有效负载。我还研究了 nfctools 库。但我不知道从哪里开始。如果有人引导我穿过图书馆,那就太好了。

4

1 回答 1

0

是的,这是可能的 - 与使用 ACR 122 完全相同,因为 API 几乎相同。

我开发了一个(商业上可用的),它可能完成您正在研究的大部分内容,或者可以作为您自己实现的起点。

于 2017-04-14T11:19:04.180 回答