在mac nfc上直接命令acr122u

时间:2013-06-25 22:12:28

标签: java nfc smartcard

我正在尝试使用javax.smartcardio建立NFC连接。我可以在Windows上成功运行此代码,但我无法在Mac上运行它。似乎问题是Mac的驱动程序,但我想知道是否有解决方案。

TerminalFactory factory;
factory = TerminalFactory.getDefault();
CardTerminal terminal = factory.terminals().list().get(0);
card = terminal.connect("direct");`

注意:我必须使用 直接 命令。

修改:为什么我必须使用 直接 命令,我需要在没有卡时发送 APDU 命令被表达。在其他协议中,如T = 0,T = 1,当读卡器上没有卡(或设备)时,我无法向阅读器发送APDU命令。

1 个答案:

答案 0 :(得分:1)

你必须使用"direct"命令非常有趣 - 好吧,你说命令但实际上它是传输协议字符串。不幸的是,API说不然(检查到Java 7 SE)。

这是connect(String)方法的JavaDoc的摘录:

  

protocol - 使用("T=0""T=1""T=CL")或"*"使用任何可用协议进行连接的协议。

如果不确定,我会选择"T=1",它应该与现代卡和大多数PCSC读卡器兼容。