Как получить вход USB-устройства - PullRequest
0 голосов
/ 19 июля 2011

Я занимаюсь разработкой приложения для Android 3.0

Я подключил сканер штрих-кода к своему планшету Acer a501, и он отлично работает.Если я выберу поле EditText, отсканирую элемент, внутри этого поля появится идентификатор штрих-кода, похожий на ввод с клавиатуры.

Однако у меня есть несколько более сложное использование.Я не хочу печатать идентификатор штрих-кода в поле EditText, но собираю данные и сохраняю их в переменной каждый раз, когда сканер штрих-кода сканирует что-либо.

Как напрямую подключиться к устройству USB?Есть ли функция прослушивания, чтобы как только сканер штрих-кода сканировал что-то, я мог зафиксировать результаты?

Я действительно ценю поддержку!

1 Ответ

0 голосов
/ 21 июля 2011

Похоже, что устройство настраивается как HID-устройство клавиатуры, а затем просто взаимодействует как внешняя аппаратная клавиатура при запуске сканирования.Дерево android.hardware.usb было бы вашим лучшим выбором, но я предполагаю, что драйвер HID автоматически получит контроль, и вы действительно не сможете его отпустить, чтобы вы могли напрямуюсвязаться с ним.

Лучше всего было бы использовать dispatchKeyEvent в Activity и прослушать серию KeyEvent s, которые генерируются при использовании сканера штрих-кода: вам придется их зацепитьвместе и убедитесь, что они соответствуют формату штрих-кода, но это позволит вам сделать фоновый захват без необходимости возиться с драйверами устройства.Дайте мне знать, если это работает.

...