У меня есть USB-сканер штрих-кода, который подключен к устройству с USB OTG. Поскольку это выбирается как устройство HID клавиатуры, мягкая клавиатура отключается, когда входы сфокусированы.
В настоящее время у меня есть метод, который запускает клавиатуру из JavaScript.
class JsObject {
@JavascriptInterface
public void InvokeKeyboard() {
InputMethodManager inputMethodManager = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
inputMethodManager.showSoftInput(findViewById(R.id.webView), InputMethodManager.SHOW_FORCED);
}
}
webview.addJavascriptInterface(new JsObject(), "Android");
В основном я хочу, чтобы он открыл клавиатуру в следующем действии внутри webview.
const button = document.querySelector('.fire-keyboard');
button.addEventListener('click', () => Android.InvokeKeyboard());
Он работает при вызове из веб-браузера вручную, но я хочу, чтобы можно было нажать кнопку, которая запускает его, и нажатие кнопки теряет фокус ввода.
Чтобы добавить, я не хочу, чтобы клавиатура отображалась при фокусировке окна ввода, только чтобы показать, когда нажата кнопка, чтобы вызвать ее. По умолчанию он отображается в фокусе.