Использование считывателя штрих-кода на клавиатуре с Android Things

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

Как приложение Android Things, я буду создавать свой образ и публиковать обновления OTA через консоль Android Things.

Насколько я понимаю, единственный способ получить ОБА клавиатурный клин и разрешить программный ввод с клавиатуры (не требуя взаимодействия с пользователем) - это установить безопасную настройку SHOW_IME_WITH_HARD_KEYBOARD = 1, что не может быть сделано программно, потому что для этого требуется разрешение WRITE_SECURE_SETTINGS, которое ОС не предоставлю. Кроме того, поскольку производственные образы из консоли AT по умолчанию не разрешают отладку, я также не смогу установить это с помощью adb (что, в любом случае, также будет проблемой, поскольку это будет означать мигание изображения, настройку параметра)., затем заново создайте новое изображение с установленными настройками и т. д.).

Есть ли способ достичь того, что я пытаюсь сделать программно?

0 ответов

В свой манифест вставьте это:

<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"
    tools:ignore="ProtectedPermissions" />

затем в коде:

    Settings.Secure.putString(getContentResolver(), "show_ime_with_hard_keyboard", "1");
Другие вопросы по тегам