我的机构刚刚获得了他们的第一张原型desfire卡,预计将投入生产(5万名员工的机构)。我正在尝试连接、验证和读取特定的文件。因此,当我展示我的android设备时,onDESFIRECardDetected被触发。我连接到标签(desfire对象),通过传递我的代理的主密钥和应用程序密钥并提供appId来进行身份验证。我的下一步是尝试读取应用程序中的特定文件。我看不到任何接受fileId的方法???我看到命令"Read(int iNoOfBytes)",javadoc声明为"iNoOf字节-要读取的字节数",但从哪里???。但是,当我运行我的应用程序并为参数输入任意值(例如,1)时,会抛出一个异常,说明"找不到文件"。
基本上,我如何使用SDK读取Desfire卡应用程序中的特定FileID???
因此,在过去几天咨询nxp后,发现这是LITE版本的限制。我被告知这个功能将在高级版本中提供,但截至本文发布,它还不可用。
byte[] readData(int fileNo,
int offset,
int length,
DESFireEV1.CommunicationType comSettings);
或者,您需要阅读MF3ICD81功能规范,并从头开始做所有事情。