The API is defined by classes in the package
javax.smartcardio. They can be classified as follows:
// show the list of available terminals
TerminalFactory factory = TerminalFactory.getDefault();
List<CardTerminal> terminals = factory.terminals().list();
System.out.println("Terminals: " + terminals);
// get the first terminal
CardTerminal terminal = terminals.get(0);
// establish a connection with the card
Card card = terminal.connect("T=0");
System.out.println("card: " + card);
CardChannel channel = card.getBasicChannel();
ResponseAPDU r = channel.transmit(new CommandAPDU(c1));
System.out.println("response: " + toString(r.getBytes()));
// disconnect
card.disconnect(false);
| Modifier and Type | Class and Description |
|---|---|
| public class | ATR
A Smart Card's answer-to-reset bytes. |
| public abstract class | Card
A Smart Card with which a connection has been established. |
| public abstract class | CardChannel
A logical channel connection to a Smart Card. |
| public class | CardException
Exception for errors that occur during communication with the Smart Card stack or the card itself. |
| public class | CardNotPresentException
Exception thrown when an application tries to establish a connection with a terminal that has no card present. |
| public class | CardPermission
A permission for Smart Card operations. |
| public abstract class | CardTerminal
A Smart Card terminal, sometimes referred to as a Smart Card Reader. |
| public abstract class | CardTerminals
The set of terminals supported by a TerminalFactory. |
| public class | CommandAPDU
A command APDU following the structure defined in ISO/IEC 7816-4. |
| public class | ResponseAPDU
A response APDU as defined in ISO/IEC 7816-4. |
| public class | TerminalFactory
A factory for CardTerminal objects. |
| public abstract class | TerminalFactorySpi
The TerminalFactorySpi class defines the service provider interface. |