У меня есть приложение WebView в моем приложении для Android.Мне нужно отправить KeyEvent с полезной нагрузкой String (из сканера штрих-кода) в WebView.Кажется, что WebView не реагирует на это событие, пока я не внесу несущественные изменения в код и не выполню «горячую замену» в Android Studio.Почему это поведение несовместимо?Как мне заставить это работать без проблем?
@Override
public void onEvent(@NotNull final Scanner.Event event) {
if (event.getType().equals("SCANNER_DATA")) {
mainWebView.post(new Runnable() {
@Override
public void run() {
KeyEvent keyEvent = new KeyEvent(SystemClock.uptimeMillis(), event.getMessage(), KeyCharacterMap.VIRTUAL_KEYBOARD, 0);
mainWebView.dispatchKeyEvent(keyEvent);
}
});
}
}
https://developer.android.com/reference/android/view/KeyEvent.html#KeyEvent(long,%20java.lang.String,%20int,%20int)