ACR122 USB SDK - JNI вызывает Winscard.dll - PullRequest
8 голосов
/ 03 июня 2011

мы купили ACR122 USB SDK для тестирования NFC.Мы хотели бы создать тестовое настольное приложение для считывателя ACR122U-A2 NFC.Мы разрабатываем его на Java на платформе Microsoft Windows 7.

Мы ожидали, что для использования PC / SC из Winscard.dll нам нужно сделать вызовы JNI.Для этого должна быть подготовлена ​​библиотека-оболочка C / C ++ для вызовов JNI.

Я думаю, что это должно быть частью SDK, потому что пример приложения ссылается на оболочку JNI Jacspcsc.dll, но библиотеки там нет.У кого-нибудь был подобный опыт?Есть ли JNI-оболочки для Winscard.dll?

Спасибо STeN

1 Ответ

5 голосов
/ 14 июня 2011

Если вы установили драйвер PC / SC для ридера, вы можете использовать пакет java smardcardio (http://download.oracle.com/javase/6/docs/jre/api/security/smartcardio/spec/javax/smartcardio/package-summary.html) для связи с ридером.

TerminalFactory terminalFactory = TerminalFactory.getDefault();
CardTerminal terminal = terminalFactory.terminals().list().get(0);
Card card = terminal.connect("T=0");
CardChannel channel = card.getBasicChannel();

// Construct a command and transmit it
CommandAPDU command = new CommandAPDU(new byte[]{(byte)0x01, (byte)0x02, ...})
ResponseAPDU response = channel.transmit(command)
...