Android: dispatchKeyEvent дает неизвестные символы - PullRequest
0 голосов
/ 24 сентября 2019

Я использую сканер QR-кода USB с моим устройством Android, чтобы приложение запускало определенные функции при сканировании определенных QR-кодов.

Я использую метод dispatchKeyEvent() для прослушивания, когда сканер отправляет ключевые события на устройство, но по какой-то причине я получаю � символов в выводе.

Ниже мой код, который я использую:

 String input;

@Override
public boolean dispatchKeyEvent(KeyEvent event) {
    if (event.getAction() == KeyEvent.ACTION_DOWN) {
        if (input == null) input = new String();

        if (Character.isDefined(event.getUnicodeChar()))
            input += String.valueOf((char)event.getUnicodeChar(event.getMetaState()));
    }

    Log.v("keycode", event.getKeyCode() + "");
    Log.v("keycode", event.getMetaState() + "");
    Log.v("keycode", event.getFlags() + "");
    Log.v("keycode", input);

    return super.dispatchKeyEvent(event);
}
...