Сканирование штрих-кода ручкой через Android-устройство

Я пытаюсь обработать значение с USB-сканера штрих-кода через мой планшет Android 3.2, сканер успешно работает в ОС, но я хочу получить значение в программе без edittext, хост usbmanager и аксессуар не перечислили его с помощью Подключенных устройств через USB.

Solutions Collecting From Web of "Сканирование штрих-кода ручкой через Android-устройство"

Большинство подключаемых сканеров штрих-кодов (которые я видел) сделаны как устройства профиля HID, поэтому все, что они подключены, должно восприниматься ими как клавиатура в основном. Я думаю, именно поэтому они не отображаются в списке аксессуаров USB API хостов. Вы должны иметь возможность получать исходный ввод от них так же, как и клавиатуру внутри вашей деятельности, переопределяя Activity.onKeyDown (int keycode, KeyEvent ke)

Что-то вроде этого в вашей деятельности:

@Override protected boolean onKeyDown(int keyCode, KeyEvent event) { Log.i("TAG", ""+ keyCode); //I think you'll have to manually check for the digits and do what you want with them. //Perhaps store them in a String until an Enter event comes in (barcode scanners i've used can be configured to send an enter keystroke after the code) return true; } 

Вы получите результат по событию Keydown активности.

Например:-

 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { char pressedKey = (char) event.getUnicodeChar(); Barcode += "" + pressedKey; Toast.makeText(getApplicationContext(), "barcode--->>>" + Barcode, 1) .show(); return true; } 

Надеюсь, этот пост вам поможет.

У меня также была такая же проблема, но когда я использовал onKeyDown или onKeyUp, она не вызывалась каждый раз, когда я имею в виду для каждого символа для штрих-кода. Я использовал DiapatchKeyEvent, и он работал хорошо.