与"javax.smartcardio. "我无法连接智能卡与SCARD_SHARE_SHARED参数…连接的方法没有那个参数…
public abstract Card connect(String protocol) throws CardException
建立到卡的连接。如果连接先前已经建立了指定的协议,则此方法返回与先前调用相同的Card对象。参数:protocol -使用的协议("T=0","T=1"或"T=CL"),或""使用任何可用的协议进行连接。*
是否有办法执行共享模式连接智能卡与javax.smartcardio?
我有连接sle4442智能卡的延迟问题(卡插入后15-20秒),我认为连接共享模式可能是线索。
使用Java的SmartcardIO,到智能卡的连接默认以SCARD_SHARE_SHARED
打开,因此您应该已经以共享模式连接。
您可以使用Card.beginExclusive()
以独占模式(SCARD_SHARE_EXCLUSIVE
)重新打开该连接。
或者您可以使用直接模式(SCARD_SHARE_DIRECT
)打开连接:
card = terminal.connect("direct");
但是在这种模式下,您还需要使用IOCTL命令手动设置通信协议,然后才能将apdu发送到卡。