Android поддерживает различные клавиатурные устройства, включая клавиатуры со специальными функциями (регулятор громкости и питания), компактные встроенные клавиатуры QWERTY и полнофункциональные внешние клавиатуры в стиле ПК.
В этом документе описываются только физические клавиатуры. Сведения о программных клавиатурах (редакторах методов ввода) см. в Android SDK.
Классификация клавиатуры
Устройство ввода классифицируется как клавиатура, если выполняется одно из следующих условий:
Устройство ввода сообщает о наличии любых кодов клавиш Linux, используемых на клавиатурах, включая от
0
до0xff
илиKEY_OK
доKEY_MAX
.Устройство ввода сообщает о наличии любых кодов клавиш Linux, используемых на джойстиках и геймпадах, в том числе
BTN_0
доBTN_9
,BTN_TRIGGER
доBTN_DEAD
илиBTN_A
доBTN_THUMBR
.
Джойстики в настоящее время классифицируются как клавиатуры, потому что кнопки джойстика и геймпада сообщаются событиями EV_KEY
так же, как сообщаются клавиши клавиатуры. Таким образом, джойстики и геймпады также используют файлы карты клавиш для настройки.
Как только устройство ввода классифицируется как клавиатура, система загружает файл конфигурации устройства ввода и раскладку клавиатуры для клавиатуры.
Затем система пытается определить дополнительные характеристики устройства.
Если на устройстве ввода есть какие-либо клавиши, сопоставленные с
KEYCODE_Q
, считается, что устройство имеет буквенную клавиатуру (в отличие от цифровой). О возможности алфавитной клавиатуры сообщается в объектеConfiguration
ресурсов какKEYBOARD_QWERTY
.Если на устройстве ввода есть какие-либо клавиши, сопоставленные с
KEYCODE_DPAD_UP
,KEYCODE_DPAD_DOWN
,KEYCODE_DPAD_LEFT
,KEYCODE_DPAD_RIGHT
иKEYCODE_DPAD_CENTER
(все должны присутствовать), считается, что устройство имеет навигационную клавиатуру. О возможности клавиатуры со стрелками сообщается в объектеConfiguration
ресурса какNAVIGATION_DPAD
.Если на устройстве ввода есть какие-либо клавиши, сопоставленные с
KEYCODE_BUTTON_A
или другими клавишами, связанными с геймпадом, считается, что на устройстве есть геймпад.
Требования к драйверу клавиатуры
Драйверы клавиатуры должны регистрировать коды клавиш только для тех клавиш, которые они действительно поддерживают. Регистрация избыточных кодов клавиш может привести к путанице в алгоритме классификации устройства или к тому, что система неправильно определит поддерживаемые возможности клавиатуры устройства.
Драйверы клавиатуры должны использовать
EV_KEY
для сообщения о нажатиях клавиш, используя значение0
, чтобы указать, что клавиша отпущена, значение1
, чтобы указать, что клавиша нажата, и значение больше или равное2
, чтобы указать, что клавиша нажата. автоматически повторяется.Android выполняет собственное повторение клавиатуры. Функция автоповтора должна быть отключена в драйвере.
Драйверы клавиатуры могут опционально указывать использование HID или низкоуровневый код сканирования, отправляя
EV_MSC
сMSC_SCANCODE
и значением, указывающим использование или код сканирования при нажатии клавиши. Эта информация в настоящее время не используется Android.Драйверы клавиатуры должны поддерживать установку состояний светодиодов, когда
EV_LED
записывается в устройство. Драйвер скрытогоhid-input
обрабатывает это автоматически. На момент написания этой статьи Android используетLED_CAPSLOCK
,LED_SCROLLLOCK
иLED_NUMLOCK
. Эти светодиоды должны поддерживаться только тогда, когда на клавиатуре действительно есть соответствующие индикаторы.Драйверы клавиатуры для встроенных клавиатур (например, с использованием матрицы GPIO) должны обязательно отправлять события
EV_KEY
со значением0
для любых клавиш, которые все еще нажаты, когда устройство переходит в спящий режим. В противном случае клавиши могут застрять и будут автоматически повторяться навсегда.
Работа с клавиатурой
Ниже приведен краткий обзор работы клавиатуры на Android.
EventHub
считывает необработанные события из драйвераevdev
и сопоставляет коды клавиш Linux (иногда называемые кодами сканирования) с кодами клавиш Android, используя карту раскладки клавиш клавиатуры.InputReader
использует необработанные события и обновляет состояние мета-ключа. Например, если левая клавиша Shift нажата или отпущена, считыватель соответственно установит или сброситMETA_SHIFT_LEFT_ON
иMETA_SHIFT_ON
.InputReader
уведомляетInputDispatcher
о ключевом событии.InputDispatcher
спрашиваетWindowManagerPolicy
, что делать с ключевым событием, вызываяWindowManagerPolicy.interceptKeyBeforeQueueing
. Этот метод является частью критического пути, который отвечает за пробуждение устройства при нажатии определенных клавиш.EventHub
эффективно удерживает блокировку пробуждения на этом критическом пути, чтобы гарантировать его завершение.Если
InputFilter
в настоящее время используется,InputDispatcher
дает ему возможность потреблять или преобразовывать ключ.InputFilter
может использоваться для реализации низкоуровневых общесистемных политик доступности.InputDispatcher
ставит ключ в очередь для обработки в потоке отправки.Когда
InputDispatcher
извлекает ключ из очереди, он даетWindowManagerPolicy
второй шанс перехватить событие ключа, вызвавWindowManagerPolicy.interceptKeyBeforeDispatching
. Этот метод обрабатывает системные ярлыки и другие функции.Затем
InputDispatcher
идентифицирует цель ключевого события (окно в фокусе) и ожидает их готовности. ЗатемInputDispatcher
доставляет ключевое событие в приложение.Внутри приложения ключевое событие распространяется вниз по иерархии представлений к сфокусированному представлению для диспетчеризации ключей до IME.
Если ключевое событие не обрабатывается в отправке до IME и используется IME, ключевое событие доставляется в IME.
Если ключевое событие не использовалось IME, то ключевое событие распространяется вниз по иерархии представлений к сфокусированному представлению для стандартной диспетчеризации клавиш.
Приложение сообщает
InputDispatcher
о том, было ли использовано ключевое событие. Если событие не было использовано,InputDispatcher
вызываетWindowManagerPolicy.dispatchUnhandledKey
, чтобы применить «откатное» поведение. В зависимости от резервного действия цикл отправки ключевых событий может быть перезапущен с использованием другого кода ключа. Например, если приложение не обрабатываетKEYCODE_ESCAPE
, система может вместо этого повторно отправить событие клавиши какKEYCODE_BACK
.
Конфигурация клавиатуры
Поведение клавиатуры определяется раскладкой клавиш клавиатуры, картой символов клавиш и конфигурацией устройства ввода.
Дополнительные сведения о файлах, участвующих в настройке клавиатуры, см. в следующих разделах:
Характеристики
Для клавиатур используются следующие свойства конфигурации устройства ввода.
keyboard.layout
Определение: keyboard.layout
= <имя>
Задает имя файла раскладки клавиш, связанного с устройством ввода, за исключением расширения .kl
. Если этот файл не найден, система ввода вместо этого будет использовать раскладку клавиш по умолчанию.
Пробелы в имени при поиске преобразуются в символы подчеркивания.
Дополнительные сведения см. в документации по файлу раскладки клавиш.
keyboard.characterMap
Определение: keyboard.characterMap
= <имя>
Указывает имя файла сопоставления ключевых символов, связанного с устройством ввода, за исключением расширения .kcm
. Если этот файл не найден, система ввода вместо этого будет использовать карту ключевых символов по умолчанию.
Пробелы в имени при поиске преобразуются в символы подчеркивания.
Для получения более подробной информации обратитесь к документации по файлу сопоставления ключевых символов.
keyboard.orientationAware
Определение: keyboard.orientationAware
= 0
| 1
Указывает, должна ли клавиатура реагировать на изменение ориентации экрана.
Если значение равно
1
, клавиши со стрелками поворачиваются при изменении связанной ориентации дисплея.Если значение равно
0
, клавиатура невосприимчива к изменениям ориентации дисплея.
Значение по умолчанию — 0
.
Осведомленность об ориентации используется для поддержки поворота клавиш со стрелками, например, на Motorola Droid. Например, когда устройство поворачивается по часовой стрелке на 90 градусов от его естественной ориентации, KEYCODE_DPAD_UP
переназначается для получения KEYCODE_DPAD_RIGHT
поскольку клавиша «вверх» в конечном итоге указывает «вправо», когда устройство удерживается в этой ориентации.
keyboard.builtIn
Определение: keyboard.builtIn
= 0
| 1
Указывает, является ли клавиатура встроенной (физически подключенной) клавиатурой.
Значение по умолчанию равно 1
, если имя устройства заканчивается на -keypad
, в противном случае — 0
.
Встроенной клавиатуре всегда назначается идентификатор устройства 0
. Другим клавиатурам, которые не являются встроенными, назначаются уникальные ненулевые идентификаторы устройств.
Использование идентификатора 0
для встроенной клавиатуры важно для обеспечения совместимости с полем KeyCharacterMap.BUILT_IN_KEYBOARD
, которое указывает идентификатор встроенной клавиатуры и имеет значение 0
. Это поле устарело в API, но старые приложения могут использовать его.
Клавиатура со специальной функцией (та, чья карта ключевых символов указывает тип SPECIAL_FUNCTION
) никогда не будет зарегистрирована как встроенная клавиатура, независимо от настройки этого свойства. Это связано с тем, что клавиатура со специальными функциями по определению не предназначена для использования в обычных целях.
Примеры конфигураций
# This is an example input device configuration file for a built-in # keyboard that has a DPad. # The keyboard is internal because it is part of the device. device.internal = 1 # The keyboard is the default built-in keyboard so it should be assigned # an id of 0. keyboard.builtIn = 1 # The keyboard includes a DPad which is mounted on the device. As the device # is rotated the orientation of the DPad rotates along with it, so the DPad must # be aware of the display orientation. This ensures that pressing 'up' on the # DPad always means 'up' from the perspective of the user, even when the entire # device has been rotated. keyboard.orientationAware = 1
Примечания о совместимости
До Honeycomb средство отображения ввода с клавиатуры не использовало никаких свойств конфигурации. Предполагалось, что все клавиатуры физически подключены и имеют информацию об ориентации. Раскладка клавиш по умолчанию и карта символов клавиш были названы qwerty
вместо Generic
. Формат карты ключевых символов также сильно отличался, и платформа не поддерживала полные клавиатуры в стиле ПК или внешние клавиатуры.
При обновлении устройств до Honeycomb обязательно создайте или обновите необходимые файлы конфигурации и карты ключей.
Использование HID, коды ключей Linux и коды ключей Android
Система обращается к ключам, используя несколько разных идентификаторов, в зависимости от уровня абстракции.
Для устройств HID каждый ключ связан с использованием HID. Драйвер hid-input
для Linux и соответствующие драйверы HID для конкретного производителя и устройства отвечают за анализ отчетов HID и сопоставление использования HID с кодами клавиш Linux.
Поскольку Android считывает события EV_KEY
из ядра Linux, он переводит каждый код ключа Linux в соответствующий код ключа Android в соответствии с файлом макета ключа устройства.
Когда ключевое событие отправляется приложению, экземпляр android.view.KeyEvent
сообщает код клавиши Linux как значение getScanCode()
, а код клавиши Android — как значение getKeyCode()
. Для целей фреймворка важно только значение getKeyCode()
.
Обратите внимание, что информация об использовании HID не используется самим Android и не передается приложениям.
Кодовые таблицы
В следующих таблицах показано, как использование HID, коды клавиш Linux и коды клавиш Android связаны друг с другом.
Столбец LKC указывает код ключа Linux в шестнадцатеричном формате.
Столбец AKC указывает код ключа Android в шестнадцатеричном формате.
Столбец «Примечания» относится к примечаниям, размещенным после таблицы.
Столбец «Версия» указывает первую версию платформы Android, которая включила этот ключ в карту ключей по умолчанию. Несколько строк отображаются в случаях, когда карта ключей по умолчанию изменилась между версиями. Указана самая старая версия 1.6.
В Gingerbread (2.3) и более ранних версиях картой ключей по умолчанию была
qwerty.kl
. Эта карта клавиш предназначена только для использования с эмулятором Android и не предназначена для поддержки произвольных внешних клавиатур. Тем не менее, несколько OEM-производителей добавили в платформу поддержку клавиатуры Bluetooth и полагались наqwerty.kl
для обеспечения необходимых сопоставлений клавиатуры. Следовательно, эти старые сопоставления могут представлять интерес для OEM-производителей, которые создают периферийные устройства для этих конкретных устройств. Обратите внимание, что сопоставления существенно отличаются от текущих, особенно в отношении обработки клавишиHOME
. Рекомендуется, чтобы все новые периферийные устройства разрабатывались в соответствии с Honeycomb или более поздними картами клавиш (т. е. стандартными HID).Начиная с Honeycomb (3.0), картой ключей по умолчанию является
Generic.kl
. Эта карта клавиш была разработана для поддержки полнофункциональных клавиатур в стиле ПК. Большая часть функций стандартных HID-клавиатур должна работать «из коробки».
Сопоставление кода клавиш может различаться в разных версиях ядра Linux и Android. Когда известно, что в сопоставлении клавиш Android по умолчанию произошли изменения, они указываются в столбце версии.
Драйверы HID и карты клавиш для конкретных устройств могут применять сопоставления, отличные от указанных здесь.
Клавиатура HID и страница клавиатуры (0x07)
Использование HID | Имя использования HID | ЛКС | Кодовое имя ключа Linux | Версия | АКС | Кодовое название ключа Android | Заметки |
---|---|---|---|---|---|---|---|
0x07 0x0001 | Ошибка клавиатуры | ||||||
0x07 0x0002 | Ошибка POST клавиатуры | ||||||
0x07 0x0003 | Ошибка клавиатуры Не определено | ||||||
0x07 0x0004 | Клавиатура А и А | 0x001e | KEY_A | 1,6 | 0x001d | KEYCODE_A | 1 |
0x07 0x0005 | Клавиатура б и б | 0x0030 | KEY_B | 1,6 | 0x001e | KEYCODE_B | 1 |
0x07 0x0006 | Клавиатура с и до | 0x002e | KEY_C | 1,6 | 0x001f | KEYCODE_C | 1 |
0x07 0x0007 | Клавиатура д и ре | 0x0020 | KEY_D | 1,6 | 0x0020 | KEYCODE_D | 1 |
0x07 0x0008 | Клавиатура е и е | 0x0012 | KEY_E | 1,6 | 0x0021 | KEYCODE_E | 1 |
0x07 0x0009 | Клавиатура f и F | 0x0021 | KEY_F | 1,6 | 0x0022 | KEYCODE_F | 1 |
0x07 0x000a | Клавиатура г и г | 0x0022 | KEY_G | 1,6 | 0x0023 | KEYCODE_G | 1 |
0x07 0x000b | Клавиатура ч и ч | 0x0023 | KEY_H | 1,6 | 0x0024 | KEYCODE_H | 1 |
0x07 0x000c | Клавиатура я и я | 0x0017 | KEY_I | 1,6 | 0x0025 | KEYCODE_I | 1 |
0x07 0x000d | Клавиатура J и J | 0x0024 | KEY_J | 1,6 | 0x0026 | KEYCODE_J | 1 |
0x07 0x000e | Клавиатура к и к | 0x0025 | KEY_K | 1,6 | 0x0027 | KEYCODE_K | 1 |
0x07 0x000f | Клавиатура л и л | 0x0026 | KEY_L | 1,6 | 0x0028 | KEYCODE_L | 1 |
0x07 0x0010 | Клавиатура м и м | 0x0032 | KEY_M | 1,6 | 0x0029 | KEYCODE_M | 1 |
0x07 0x0011 | Клавиатура н и н | 0x0031 | KEY_N | 1,6 | 0x002a | KEYCODE_N | 1 |
0x07 0x0012 | Клавиатура о и о | 0x0018 | KEY_O | 1,6 | 0x002b | KEYCODE_O | 1 |
0x07 0x0013 | Клавиатура р и р | 0x0019 | KEY_P | 1,6 | 0x002c | KEYCODE_P | 1 |
0x07 0x0014 | Клавиатура Q и Q | 0x0010 | KEY_Q | 1,6 | 0x002d | KEYCODE_Q | 1 |
0x07 0x0015 | Клавиатура р и р | 0x0013 | KEY_R | 1,6 | 0x002e | KEYCODE_R | 1 |
0x07 0x0016 | Клавиатура S и S | 0x001f | KEY_S | 1,6 | 0x002f | KEYCODE_S | 1 |
0x07 0x0017 | Клавиатура т и т | 0x0014 | KEY_T | 1,6 | 0x0030 | KEYCODE_T | 1 |
0x07 0x0018 | Клавиатура ты и ты | 0x0016 | KEY_U | 1,6 | 0x0031 | KEYCODE_U | 1 |
0x07 0x0019 | Клавиатура v и v | 0x002f | KEY_V | 1,6 | 0x0032 | KEYCODE_V | 1 |
0x07 0x001а | Клавиатура ж и ж | 0x0011 | KEY_W | 1,6 | 0x0033 | KEYCODE_W | 1 |
0x07 0x001b | Клавиатура х и х | 0x002d | KEY_X | 1,6 | 0x0034 | KEYCODE_X | 1 |
0x07 0x001с | Клавиатура Y и Y | 0x0015 | KEY_Y | 1,6 | 0x0035 | KEYCODE_Y | 1 |
0x07 0x001d | Клавиатура Z и Z | 0x002c | KEY_Z | 1,6 | 0x0036 | KEYCODE_Z | 1 |
0x07 0x001e | Клавиатура 1 и ! | 0x0002 | KEY_1 | 1,6 | 0x0008 | KEYCODE_1 | 1 |
0x07 0x001f | Клавиатура 2 и @ | 0x0003 | KEY_2 | 1,6 | 0x0009 | KEYCODE_2 | 1 |
0x07 0x0020 | Клавиатура 3 и # | 0x0004 | KEY_3 | 1,6 | 0x000a | KEYCODE_3 | 1 |
0x07 0x0021 | Клавиатура 4 и $ | 0x0005 | KEY_4 | 1,6 | 0x000b | KEYCODE_4 | 1 |
0x07 0x0022 | Клавиатура 5 и % | 0x0006 | KEY_5 | 1,6 | 0x000c | KEYCODE_5 | 1 |
0x07 0x0023 | Клавиатура 6 и ^ | 0x0007 | KEY_6 | 1,6 | 0x000d | KEYCODE_6 | 1 |
0x07 0x0024 | Клавиатура 7 и & | 0x0008 | KEY_7 | 1,6 | 0x000e | KEYCODE_7 | 1 |
0x07 0x0025 | Клавиатура 8 и * | 0x0009 | KEY_8 | 1,6 | 0x000f | KEYCODE_8 | 1 |
0x07 0x0026 | Клавиатура 9 и ( | 0x000a | KEY_9 | 1,6 | 0x0010 | KEYCODE_9 | 1 |
0x07 0x0027 | Клавиатура 0 и ) | 0x000b | KEY_0 | 1,6 | 0x0007 | KEYCODE_0 | 1 |
0x07 0x0028 | Возврат с клавиатуры (ВВОД) | 0x001c | KEY_ENTER | 1,6 | 0x0042 | KEYCODE_ENTER | 1 |
0x07 0x0029 | ВЫХОД с клавиатуры | 0x0001 | KEY_ESC | 3.0 | 0x006f | KEYCODE_ESCAPE | |
"" | "" | "" | "" | 2.3 | 0x0004 | KEYCODE_BACK | |
0x07 0x002а | Клавиатура DELETE (Backspace) | 0x000e | KEY_BACKSPACE | 1,6 | 0x0043 | KEYCODE_DEL | |
0x07 0x002b | Вкладка «Клавиатура» | 0x000f | KEY_TAB | 1,6 | 0x003d | KEYCODE_TAB | |
0x07 0x002c | Клавиатура Пробел | 0x0039 | KEY_SPACE | 1,6 | 0x003e | KEYCODE_SPACE | |
0x07 0x002d | Клавиатура - и _ | 0x000c | KEY_MINUS | 1,6 | 0x0045 | KEYCODE_MINUS | 1 |
0x07 0x002e | Клавиатура = и + | 0x000d | KEY_EQUAL | 1,6 | 0x0046 | KEYCODE_EQUALS | 1 |
0x07 0x002f | Клавиатура [ и { | 0x001a | KEY_LEFTBRACE | 1,6 | 0x0047 | KEYCODE_LEFT_BRACKET | 1 |
0x07 0x0030 | Клавиатура ] и } | 0x001b | KEY_RIGHTBRACE | 1,6 | 0x0048 | KEYCODE_RIGHT_BRACKET | 1 |
0x07 0x0031 | Клавиатура \ и | | 0x002b | KEY_BACKSLASH | 1,6 | 0x0049 | KEYCODE_BACKSLASH | 1 |
0x07 0x0032 | Клавиатура не для США # и ~ | 0x002b | KEY_BACKSLASH | 1,6 | 0x0049 | KEYCODE_BACKSLASH | 1 |
0x07 0x0033 | Клавиатура ; а также : | 0x0027 | KEY_ТОЧКА С ЗАПЯТОЙ | 1,6 | 0x004a | KEYCODE_ТОЧКА С ЗАПЯТОЙ | 1 |
0x07 0x0034 | Клавиатура 'и' | 0x0028 | KEY_АПОСТРОП | 1,6 | 0x004b | KEYCODE_APOSTROPHE | 1 |
0x07 0x0035 | Клавиатура ` и ~ | 0x0029 | KEY_GRAVE | 3.0 | 0x0044 | KEYCODE_GRAVE | 1 |
0x07 0x0036 | Клавиатура и < | 0x0033 | KEY_COMMA | 1,6 | 0x0037 | KEYCODE_COMMA | 1 |
0x07 0x0037 | Клавиатура. и > | 0x0034 | KEY_DOT | 1,6 | 0x0038 | KEYCODE_PERIOD | 1 |
0x07 0x0038 | Клавиатура / и ? | 0x0035 | KEY_SLASH | 1,6 | 0x004c | KEYCODE_SLASH | 1 |
0x07 0x0039 | Клавиатура Caps Lock | 0x003a | KEY_CAPSLOCK | 3.0 | 0x0073 | KEYCODE_CAPS_LOCK | |
0x07 0x003a | Клавиатура F1 | 0x003b | KEY_F1 | 3.0 | 0x0083 | KEYCODE_F1 | |
"" | "" | "" | "" | 1,6 | 0x0052 | KEYCODE_MENU | |
0x07 0x003b | Клавиатура F2 | 0x003c | KEY_F2 | 3.0 | 0x0084 | KEYCODE_F2 | |
"" | "" | "" | "" | 1,6 | 0x0002 | KEYCODE_SOFT_RIGHT | |
0x07 0x003c | Клавиатура F3 | 0x003d | KEY_F3 | 3.0 | 0x0085 | KEYCODE_F3 | |
"" | "" | "" | "" | 1,6 | 0x0005 | KEYCODE_CALL | |
0x07 0x003d | Клавиатура F4 | 0x003e | KEY_F4 | 3.0 | 0x0086 | KEYCODE_F4 | |
"" | "" | "" | "" | 1,6 | 0x0006 | KEYCODE_ENDCALL | |
0x07 0x003e | Клавиатура F5 | 0x003f | KEY_F5 | 3.0 | 0x0087 | KEYCODE_F5 | |
0x07 0x003f | Клавиатура F6 | 0x0040 | KEY_F6 | 3.0 | 0x0088 | KEYCODE_F6 | |
0x07 0x0040 | Клавиатура F7 | 0x0041 | KEY_F7 | 3.0 | 0x0089 | KEYCODE_F7 | |
0x07 0x0041 | Клавиатура F8 | 0x0042 | KEY_F8 | 3.0 | 0x008a | KEYCODE_F8 | |
0x07 0x0042 | Клавиатура F9 | 0x0043 | KEY_F9 | 3.0 | 0x008b | KEYCODE_F9 | |
0x07 0x0043 | Клавиатура F10 | 0x0044 | KEY_F10 | 3.0 | 0x008c | KEYCODE_F10 | |
"" | "" | "" | "" | 2.3 | 0x0052 | KEYCODE_MENU | |
0x07 0x0044 | Клавиатура F11 | 0x0057 | KEY_F11 | 3.0 | 0x008d | KEYCODE_F11 | |
0x07 0x0045 | Клавиатура F12 | 0x0058 | KEY_F12 | 3.0 | 0x008e | KEYCODE_F12 | |
0x07 0x0046 | Экран печати клавиатуры | 0x0063 | KEY_SYSRQ | 3.0 | 0x0078 | KEYCODE_SYSRQ | |
0x07 0x0047 | Блокировка прокрутки клавиатуры | 0x0046 | KEY_SCROLLLOCK | 3.0 | 0x0074 | KEYCODE_SCROLL_LOCK | |
0x07 0x0048 | Клавиатура Пауза | 0x0077 | KEY_PAUSE | 3.0 | 0x0079 | KEYCODE_BREAK | |
0x07 0x0049 | Вставка для клавиатуры | 0x006e | KEY_INSERT | 3.0 | 0x007c | KEYCODE_INSERT | |
0x07 0x004a | Главная Клавиатура | 0x0066 | KEY_HOME | 3.0 | 0x007a | KEYCODE_MOVE_HOME | |
"" | "" | "" | "" | 1,6 | 0x0003 | KEYCODE_HOME | |
0x07 0x004b | Страница клавиатуры вверх | 0x0068 | KEY_PAGEUP | 3.0 | 0x005c | KEYCODE_PAGE_UP | |
0x07 0x004c | Клавиатура Удалить вперед | 0x006f | KEY_DELETE | 3.0 | 0x0070 | KEYCODE_FORWARD_DEL | |
0x07 0x004d | Конец клавиатуры | 0x006b | KEY_END | 3.0 | 0x007b | KEYCODE_MOVE_END | |
"" | "" | "" | "" | 1,6 | 0x0006 | KEYCODE_ENDCALL | |
0x07 0x004e | Страница клавиатуры вниз | 0x006d | KEY_PAGEDOWN | 3.0 | 0x005d | KEYCODE_PAGE_DOWN | |
0x07 0x004f | Клавиатура со стрелкой вправо | 0x006a | KEY_RIGHT | 1,6 | 0x0016 | KEYCODE_DPAD_RIGHT | |
0x07 0x0050 | Клавиатура со стрелкой влево | 0x0069 | KEY_LEFT | 1,6 | 0x0015 | KEYCODE_DPAD_LEFT | |
0x07 0x0051 | Клавиатура со стрелкой вниз | 0x006c | KEY_DOWN | 1,6 | 0x0014 | KEYCODE_DPAD_DOWN | |
0x07 0x0052 | Клавиатура со стрелкой вверх | 0x0067 | KEY_UP | 1,6 | 0x0013 | KEYCODE_DPAD_UP | |
0x07 0x0053 | Клавиатура Num Lock и Clear | 0x0045 | KEY_NUMLOCK | 3.0 | 0x008f | KEYCODE_NUM_LOCK | |
0x07 0x0054 | Клавиатура / | 0x0062 | KEY_KPSLASH | 3.0 | 0x009a | KEYCODE_NUMPAD_DIVIDE | |
0x07 0x0055 | Клавиатура * | 0x0037 | KEY_KPASTERISK | 3.0 | 0x009b | KEYCODE_NUMPAD_MULTIPLY | |
0x07 0x0056 | Клавиатура - | 0x004a | KEY_KPMINUS | 3.0 | 0x009c | KEYCODE_NUMPAD_SUBTRACT | |
0x07 0x0057 | Клавиатура + | 0x004e | KEY_KPPLUS | 3.0 | 0x009d | KEYCODE_NUMPAD_ADD | |
0x07 0x0058 | Клавиатура ВВОД | 0x0060 | KEY_KPENTER | 3.0 | 0x00a0 | KEYCODE_NUMPAD_ENTER | |
0x07 0x0059 | Клавиатура 1 и конец | 0x004f | KEY_KP1 | 3.0 | 0x0091 | KEYCODE_NUMPAD_1 | |
0x07 0x005a | Клавиатура 2 и стрелка вниз | 0x0050 | KEY_KP2 | 3.0 | 0x0092 | KEYCODE_NUMPAD_2 | |
0x07 0x005b | Клавиатура 3 и PageDn | 0x0051 | KEY_KP3 | 3.0 | 0x0093 | KEYCODE_NUMPAD_3 | |
0x07 0x005с | Клавиатура 4 и стрелка влево | 0x004b | KEY_KP4 | 3.0 | 0x0094 | KEYCODE_NUMPAD_4 | |
0x07 0x005d | Клавиатура 5 | 0x004c | KEY_KP5 | 3.0 | 0x0095 | KEYCODE_NUMPAD_5 | |
0x07 0x005e | Клавиатура 6 и стрелка вправо | 0x004d | KEY_KP6 | 3.0 | 0x0096 | KEYCODE_NUMPAD_6 | |
0x07 0x005f | Клавиатура 7 и Дом | 0x0047 | KEY_KP7 | 3.0 | 0x0097 | KEYCODE_NUMPAD_7 | |
0x07 0x0060 | Клавиатура 8 и стрелка вверх | 0x0048 | KEY_KP8 | 3.0 | 0x0098 | KEYCODE_NUMPAD_8 | |
0x07 0x0061 | Клавиатура 9 и страница вверх | 0x0049 | KEY_KP9 | 3.0 | 0x0099 | KEYCODE_NUMPAD_9 | |
0x07 0x0062 | Клавиатура 0 и Insert | 0x0052 | KEY_KP0 | 3.0 | 0x0090 | KEYCODE_NUMPAD_0 | |
0x07 0x0063 | Клавиатура. и Удалить | 0x0053 | KEY_KPDOT | 3.0 | 0x009e | KEYCODE_NUMPAD_DOT | |
0x07 0x0064 | Клавиатура не для США \ и | | 0x0056 | KEY_102ND | 4.0 | 0x0049 | KEYCODE_BACKSLASH | 1 |
0x07 0x0065 | Клавиатурное приложение | 0x007f | KEY_COMPOSE | 3.0 | 0x0052 | KEYCODE_MENU | |
"" | "" | "" | "" | 1,6 | 0x0054 | KEYCODE_SEARCH | |
0x07 0x0066 | Мощность клавиатуры | 0x0074 | KEY_POWER | 1,6 | 0x001a | KEYCODE_POWER | |
0x07 0x0067 | Клавиатура = | 0x0075 | KEY_KPEQUAL | 3.0 | 0x00a1 | KEYCODE_NUMPAD_EQUALS | |
0x07 0x0068 | Клавиатура F13 | 0x00b7 | KEY_F13 | ||||
0x07 0x0069 | Клавиатура F14 | 0x00b8 | KEY_F14 | ||||
0x07 0x006a | Клавиатура F15 | 0x00b9 | KEY_F15 | ||||
0x07 0x006b | Клавиатура F16 | 0x00ba | KEY_F16 | ||||
0x07 0x006c | Клавиатура F17 | 0x00bb | KEY_F17 | ||||
0x07 0x006d | Клавиатура F18 | 0x00bc | KEY_F18 | ||||
0x07 0x006e | Клавиатура F19 | 0x00bd | KEY_F19 | ||||
0x07 0x006f | Клавиатура F20 | 0x00be | KEY_F20 | ||||
0x07 0x0070 | Клавиатура F21 | 0x00bf | KEY_F21 | ||||
0x07 0x0071 | Клавиатура F22 | 0x00c0 | KEY_F22 | ||||
0x07 0x0072 | Клавиатура F23 | 0x00c1 | KEY_F23 | ||||
0x07 0x0073 | Клавиатура F24 | 0x00c2 | KEY_F24 | ||||
0x07 0x0074 | Клавиатура Выполнить | 0x0086 | KEY_OPEN | ||||
0x07 0x0075 | Справка по клавиатуре | 0x008a | KEY_HELP | ||||
0x07 0x0076 | Меню клавиатуры | 0x0082 | KEY_PROPS | ||||
0x07 0x0077 | Выбор клавиатуры | 0x0084 | KEY_FRONT | ||||
0x07 0x0078 | Стоп клавиатуры | 0x0080 | KEY_STOP | 3.0 | 0x0056 | KEYCODE_MEDIA_STOP | |
0x07 0x0079 | Клавиатура снова | 0x0081 | KEY_AGAIN | ||||
0x07 0x007a | Клавиатура Отменить | 0x0083 | KEY_UNDO | ||||
0x07 0x007b | Вырез клавиатуры | 0x0089 | KEY_CUT | ||||
0x07 0x007с | Копия клавиатуры | 0x0085 | KEY_COPY | ||||
0x07 0x007d | Вставка для клавиатуры | 0x0087 | KEY_PASTE | ||||
0x07 0x007e | Клавиатура найти | 0x0088 | KEY_FIND | ||||
0x07 0x007f | Отключение звука клавиатуры | 0x0071 | KEY_MUTE | 3.0 | 0x00a4 | KEYCODE_VOLUME_MUTE | |
0x07 0x0080 | Увеличение громкости клавиатуры | 0x0073 | KEY_VOLUMEUP | 1,6 | 0x0018 | KEYCODE_VOLUME_UP | |
0x07 0x0081 | Уменьшить громкость клавиатуры | 0x0072 | KEY_VOLUMEDOWN | 1,6 | 0x0019 | KEYCODE_VOLUME_DOWN | |
0x07 0x0082 | Блокировка клавиатуры Caps Lock | ||||||
0x07 0x0083 | Блокировка клавиатуры Num Lock | ||||||
0x07 0x0084 | Блокировка клавиатуры Блокировка прокрутки | ||||||
0x07 0x0085 | Клавиатура Запятая | 0x0079 | KEY_KPCOMMA | 3.0 | 0x009f | KEYCODE_NUMPAD_COMMA | |
0x07 0x0086 | Клавиатура Знак равенства | ||||||
0x07 0x0087 | Клавиатура Международная1 | 0x0059 | KEY_RO | ||||
0x07 0x0088 | Клавиатура Международная2 | 0x005d | KEY_KATAKANAHIRAGANA | ||||
0x07 0x0089 | Клавиатура Международная3 | 0x007c | KEY_YEN | ||||
0x07 0x008a | Клавиатура Международная4 | 0x005c | KEY_HENKAN | ||||
0x07 0x008b | Клавиатура Международная5 | 0x005e | KEY_МУХЕНКАН | ||||
0x07 0x008с | Клавиатура Международная6 | 0x005f | KEY_KPJPCOMMA | ||||
0x07 0x008d | Клавиатура Международная7 | ||||||
0x07 0x008e | Клавиатура Международная8 | ||||||
0x07 0x008f | Клавиатура Международная9 | ||||||
0x07 0x0090 | Клавиатура ЯЗЫК1 | 0x007a | KEY_HANGEUL | ||||
0x07 0x0091 | Клавиатура ЯЗЫК2 | 0x007b | KEY_HANJA | ||||
0x07 0x0092 | Клавиатура ЯЗЫК3 | 0x005a | KEY_KATAKANA | ||||
0x07 0x0093 | Клавиатура ЯЗЫК4 | 0x005b | KEY_HIRAGANA | ||||
0x07 0x0094 | Клавиатура ЯЗЫК5 | 0x0055 | KEY_ЗЕНКАКУХАНКАКУ | ||||
0x07 0x0095 | Клавиатура ЯЗЫК6 | ||||||
0x07 0x0096 | Клавиатура ЯЗЫК7 | ||||||
0x07 0x0097 | Клавиатура ЯЗЫК8 | ||||||
0x07 0x0098 | Клавиатура ЯЗЫК9 | ||||||
0x07 0x0099 | Клавиатура Альтернативное стирание | ||||||
0x07 0x009а | Клавиатура SysReq/Внимание | ||||||
0x07 0x009b | Клавиатура Отмена | ||||||
0x07 0x009с | Клавиатура Очистить | ||||||
0x07 0x009d | Клавиатура Приора | ||||||
0x07 0x009e | Возврат клавиатуры | ||||||
0x07 0x009f | Разделитель клавиатуры | ||||||
0x07 0x00a0 | Выход на клавиатуру | ||||||
0x07 0x00a1 | Клавиатурный оператор | ||||||
0x07 0x00a2 | Клавиатура очистить/снова | ||||||
0x07 0x00a3 | Клавиатура CrSel/Реквизит | ||||||
0x07 0x00a4 | Клавиатура ExSel | ||||||
0x07 0x00b0 | Клавиатура 00 | ||||||
0x07 0x00b1 | Клавиатура 000 | ||||||
0x07 0x00b2 | Разделитель тысяч | ||||||
0x07 0x00b3 | Десятичный разделитель | ||||||
0x07 0x00b4 | Валютная единица | ||||||
0x07 0x00b5 | Денежная единица | ||||||
0x07 0x00b6 | Клавиатура ( | 0x00b3 | KEY_KPLEFTPAREN | 3.0 | 0x00a2 | KEYCODE_NUMPAD_LEFT_PAREN | |
0x07 0x00b7 | Клавиатура) | 0x00b4 | KEY_KPRIGHTPAREN | 3.0 | 0x00a3 | KEYCODE_NUMPAD_RIGHT_PAREN | |
0x07 0x00b8 | Клавиатура { | ||||||
0x07 0x00b9 | Клавиатура } | ||||||
0x07 0x00ba | Вкладка клавиатуры | ||||||
0x07 0x00бб | Клавиатура Backspace | ||||||
0x07 0x00bc | Клавиатура А | ||||||
0x07 0x00бд | Клавиатура Б | ||||||
0x07 0x00be | Клавиатура С | ||||||
0x07 0x00bf | Клавиатура D | ||||||
0x07 0x00c0 | Клавиатура Е | ||||||
0x07 0x00c1 | Клавиатура F | ||||||
0x07 0x00c2 | Исключающее ИЛИ клавиатуры | ||||||
0x07 0x00c3 | Клавиатура ^ | ||||||
0x07 0x00c4 | Клавиатура % | ||||||
0x07 0x00c5 | Клавиатура < | ||||||
0x07 0x00c6 | Клавиатура > | ||||||
0x07 0x00c7 | Клавиатура и | ||||||
0x07 0x00c8 | Клавиатура && | ||||||
0x07 0x00c9 | Клавиатура | | ||||||
0x07 0x00ca | Клавиатура || | ||||||
0x07 0x00cb | Клавиатура: | ||||||
0x07 0x00cc | Клавиатура # | ||||||
0x07 0x00cd | Пространство клавиатуры | ||||||
0x07 0x00ce | Клавиатура @ | ||||||
0x07 0x00cf | Клавиатура! | ||||||
0x07 0x00d0 | Память клавиатуры | ||||||
0x07 0x00d1 | Вызов памяти клавиатуры | ||||||
0x07 0x00d2 | Очистить память клавиатуры | ||||||
0x07 0x00d3 | Добавление памяти клавиатуры | ||||||
0x07 0x00d4 | Вычитание из памяти клавиатуры | ||||||
0x07 0x00d5 | Умножение памяти клавиатуры | ||||||
0x07 0x00d6 | Разделение памяти клавиатуры | ||||||
0x07 0x00d7 | Клавиатура +/- | ||||||
0x07 0x00d8 | Клавиатура Очистить | ||||||
0x07 0x00d9 | Клавиатура Очистить ввод | ||||||
0x07 0x00да | Двоичный код клавиатуры | ||||||
0x07 0x00дб | Восьмеричная клавиатура | ||||||
0x07 0x00dc | Десятичная клавиатура | ||||||
0x07 0x00дд | Клавиатура Шестнадцатеричный | ||||||
0x07 0x00e0 | Клавиатура Левый контроль | 0x001d | KEY_LEFTCTRL | 3.0 | 0x0071 | KEYCODE_CTRL_LEFT | |
0x07 0x00e1 | Сдвиг влево на клавиатуре | 0x002a | KEY_LEFTSHIFT | 1,6 | 0x003b | KEYCODE_SHIFT_LEFT | |
0x07 0x00e2 | Клавиатура Левый Alt | 0x0038 | KEY_LEFTALT | 1,6 | 0x0039 | KEYCODE_ALT_LEFT | |
0x07 0x00e3 | Клавиатура слева GUI | 0x007d | KEY_LEFTMETA | 3.0 | 0x0075 | KEYCODE_META_LEFT | |
0x07 0x00e4 | Правое управление клавиатурой | 0x0061 | KEY_RIGHTCTRL | 3.0 | 0x0072 | KEYCODE_CTRL_RIGHT | |
0x07 0x00e5 | Сдвиг вправо на клавиатуре | 0x0036 | KEY_RIGHTSHIFT | 1,6 | 0x003c | KEYCODE_SHIFT_RIGHT | |
0x07 0x00e6 | Клавиатура вправо Alt | 0x0064 | KEY_RIGHTALT | 1,6 | 0x003a | KEYCODE_ALT_RIGHT | |
0x07 0x00e7 | Клавиатура справа GUI | 0x007e | KEY_RIGHTMETA | 3.0 | 0x0076 | KEYCODE_META_RIGHT | |
0x07 0x00e8 | 0x00a4 | KEY_PLAYPAUSE | 3.0 | 0x0055 | KEYCODE_MEDIA_PLAY_PAUSE | ||
0x07 0x00e9 | 0x00a6 | KEY_STOPCD | 3.0 | 0x0056 | KEYCODE_MEDIA_STOP | ||
0x07 0x00ea | 0x00a5 | KEY_PREVIOUSSONG | 3.0 | 0x0058 | KEYCODE_MEDIA_PREVIOUS | ||
0x07 0x00eb | 0x00a3 | KEY_NEXTSONG | 3.0 | 0x0057 | KEYCODE_MEDIA_NEXT | ||
0x07 0x00ec | 0x00a1 | KEY_EJECTCD | 3.0 | 0x0081 | KEYCODE_MEDIA_EJECT | ||
0x07 0x00ed | 0x0073 | KEY_VOLUMEUP | 1,6 | 0x0018 | KEYCODE_VOLUME_UP | ||
0x07 0x00ee | 0x0072 | KEY_VOLUMEDOWN | 1,6 | 0x0019 | KEYCODE_VOLUME_DOWN | ||
0x07 0x00ef | 0x0071 | KEY_MUTE | 3.0 | 0x00a4 | KEYCODE_VOLUME_MUTE | ||
0x07 0x00f0 | 0x0096 | KEY_WWW | 1,6 | 0x0040 | KEYCODE_EXPLORER | ||
0x07 0x00f1 | 0x009e | KEY_BACK | 1,6 | 0x0004 | KEYCODE_BACK | ||
0x07 0x00f2 | 0x009f | KEY_FORWARD | 3.0 | 0x007d | KEYCODE_FORWARD | ||
0x07 0x00f3 | 0x0080 | KEY_STOP | 3.0 | 0x0056 | KEYCODE_MEDIA_STOP | ||
0x07 0x00f4 | 0x0088 | KEY_FIND | |||||
0x07 0x00f5 | 0x00b1 | KEY_SCROLLUP | 3.0 | 0x005c | KEYCODE_PAGE_UP | ||
0x07 0x00f6 | 0x00b2 | KEY_SCROLLDOWN | 3.0 | 0x005d | KEYCODE_PAGE_DOWN | ||
0x07 0x00f7 | 0x00b0 | KEY_EDIT | |||||
0x07 0x00f8 | 0x008e | KEY_SLEEP | |||||
0x07 0x00f9 | 0x0098 | KEY_COFFEE | 4.0 | 0x001a | KEYCODE_POWER | ||
0x07 0x00fa | 0x00ad | KEY_REFRESH | |||||
0x07 0x00fb | 0x008c | KEY_CALC | 4.0.3 | 0x00d2 | KEYCODE_КАЛКУЛЯТОР |
Общая страница рабочего стола HID (0x01)
Использование HID | Имя использования HID | ЛКС | Кодовое имя ключа Linux | Версия | АКС | Кодовое название ключа Android | Заметки |
---|---|---|---|---|---|---|---|
0x01 0x0081 | Выключение системы | 0x0074 | KEY_POWER | 1,6 | 0x001a | KEYCODE_POWER | |
0x01 0x0082 | Спящий режим системы | 0x008e | KEY_SLEEP | 4.0 | 0x001a | KEYCODE_POWER | |
0x01 0x0083 | Пробуждение системы | 0x008f | KEY_WAKEUP | 4.0 | 0x001a | KEYCODE_POWER | |
0x01 0x0084 | Системное контекстное меню | ||||||
0x01 0x0085 | Главное меню системы | ||||||
0x01 0x0086 | Меню системных приложений | ||||||
0x01 0x0087 | Справка по системному меню | ||||||
0x01 0x0088 | Системное меню Выход | ||||||
0x01 0x0089 | Системное меню Выбор | ||||||
0x01 0x008a | Системное меню справа | ||||||
0x01 0x008b | Системное меню слева | ||||||
0x01 0x008c | Системное меню Вверх | ||||||
0x01 0x008d | Системное меню вниз | ||||||
0x01 0x008e | Холодный перезапуск системы | ||||||
0x01 0x008f | Теплый перезапуск системы | ||||||
0x01 0x00a0 | Системная док-станция | ||||||
0x01 0x00a1 | Отстыковка системы | ||||||
0x01 0x00a2 | Настройка системы | ||||||
0x01 0x00a3 | Разрыв системы | ||||||
0x01 0x00a4 | Перерыв системного отладчика | ||||||
0x01 0x00a5 | Перерыв приложения | ||||||
0x01 0x00a6 | Перерыв в отладчике приложений | ||||||
0x01 0x00a7 | Отключение системного динамика | ||||||
0x01 0x00a8 | Спящий режим системы | ||||||
0x01 0x00b0 | Инвертировать системный дисплей | ||||||
0x01 0x00b1 | Системный дисплей Внутренний | ||||||
0x01 0x00b2 | Системный дисплей Внешний | ||||||
0x01 0x00b3 | Системный дисплей Оба | ||||||
0x01 0x00b4 | Двойной системный дисплей | ||||||
0x01 0x00b5 | Переключение системного дисплея Int/Ext | ||||||
0x01 0x00b6 | Переключение системного дисплея первич./сек. | ||||||
0x01 0x00b7 | Системный ЖК-дисплей Автомасштабирование |
HID потребительская страница (0x0c)
Использование HID | Имя использования HID | ЛКС | Кодовое имя ключа Linux | Версия | АКС | Кодовое название ключа Android | Заметки |
---|---|---|---|---|---|---|---|
0x0c 0x0030 | Сила | ||||||
0x0c 0x0031 | Перезагрузить | ||||||
0x0c 0x0032 | Спать | ||||||
0x0c 0x0033 | Спать после | ||||||
0x0c 0x0034 | Режим сна | 0x008e | KEY_SLEEP | 4.0 | 0x001a | KEYCODE_POWER | |
0x0c 0x0040 | Меню | 0x008b | KEY_MENU | 1,6 | 0x0052 | KEYCODE_MENU | |
0x0c 0x0041 | Выбор меню | ||||||
0x0c 0x0042 | Меню вверх | ||||||
0x0c 0x0043 | Меню вниз | ||||||
0x0c 0x0044 | Меню слева | ||||||
0x0c 0x0045 | Меню справа | 0x0181 | KEY_RIGHT | ||||
0x0c 0x0046 | Выход из меню | ||||||
0x0c 0x0047 | Меню Увеличение значения | ||||||
0x0c 0x0048 | Меню Значение Уменьшение | ||||||
0x0c 0x0067 | Переключение «картинка в картинке» | 0x00ab | KEYCODE_WINDOW | Добавлено в aosp/1365553 | |||
0x0c 0x0069 | Красная кнопка меню | 0x18e | KEY_RED | 0x00b7 | KEYCODE_PROG_RED | Добавлено в aosp/1388616 | |
0x0c 0x006a | Зеленая кнопка меню | 0x18f | KEY_GREEN | 0x00b8 | KEYCODE_PROG_GREEN | Добавлено в aosp/1388616 | |
0x0c 0x006b | Синяя кнопка меню | 0x191 | KEY_BLUE | 0x00ba | KEYCODE_PROG_BLUE | Добавлено в aosp/1388616 | |
0x0c 0x006c | Желтая кнопка меню | 0x190 | KEY_YELLOW | 0x00b9 | KEYCODE_PROG_YELLOW | Добавлено в aosp/1388616 | |
0x0c 0x0081 | Назначить выбор | ||||||
0x0c 0x0082 | Шаг режима | ||||||
0x0c 0x0083 | Вспомнить последний | 0x0195 | KEY_LAST | 0xe5 | KEYCODE_LAST_CHANNEL | Добавлено в aosp/1365551 | |
0x0c 0x0084 | Введите канал | ||||||
0x0c 0x0085 | Заказать фильм | ||||||
0x0c 0x0088 | Медиа Выберите Компьютер | 0x0178 | KEY_ПК | ||||
0x0c 0x0089 | Медиа Выберите ТВ | 0x0179 | KEY_TV | 3.0 | 0x00aa | KEYCODE_TV | |
0x0c 0x008a | Медиа Выберите WWW | 0x0096 | KEY_WWW | 1,6 | 0x0040 | KEYCODE_EXPLORER | |
0x0c 0x008b | Выбор носителя DVD | 0x0185 | KEY_DVD | ||||
0x0c 0x008c | Медиа Выберите Телефон | 0x00a9 | KEY_PHONE | 3.0 | 0x0005 | KEYCODE_CALL | |
0x0c 0x008d | Руководство по программе Media Select | 0x016a | KEY_PROGRAM | 3.0 | 0x00ac | KEYCODE_GUIDE | |
0x0c 0x008e | Медиа Выберите Видео Телефон | 0x01a0 | KEY_VIDEOPHONE | ||||
0x0c 0x008f | Медиа Выберите Игры | 0x01a1 | KEY_GAMES | ||||
0x0c 0x0090 | Сообщения о выборе медиа | 0x018c | KEY_MEMO | ||||
0x0c 0x0091 | Компакт-диск выбора носителя | 0x017f | KEY_CD | ||||
0x0c 0x0092 | Медиа Выберите Видеомагнитофон | 0x017b | KEY_VCR | ||||
0x0c 0x0093 | Выбор медиа-тюнера | 0x0182 | KEY_TUNER | ||||
0x0c 0x0094 | Покидать | 0x00ae | KEY_EXIT | ||||
0x0c 0x0095 | Помощь | 0x008a | KEY_HELP | ||||
0x0c 0x0096 | Лента выбора носителя | 0x0180 | KEY_TAPE | ||||
0x0c 0x0097 | Кабель выбора носителя | 0x017a | KEY_TV2 | ||||
0x0c 0x0098 | Медиа Выберите Спутник | 0x017d | KEY_SAT | ||||
0x0c 0x0099 | Медиа Выберите Безопасность | ||||||
0x0c 0x009a | Медиа Выберите Главная | 0x016e | KEY_PVR | 3.0 | 0x00ad | KEYCODE_DVR | |
0x0c 0x0061 | Субтитры | 0x0172 | KEY_SUBTITLE | 0x00af | KEYCODE_CAPTIONS | Добавлено в aosp/1365552 | |
0x0c 0x009c | Приращение канала | 0x0192 | KEY_CHANNELUP | 3.0 | 0x00a6 | KEYCODE_CHANNEL_UP | |
0x0c 0x009d | Декремент канала | 0x0193 | KEY_CHANNELDOWN | 3.0 | 0x00a7 | KEYCODE_CHANNEL_DOWN | |
0x0c 0x009e | СМИ Выберите SAP | ||||||
0x0c 0x00a0 | видеомагнитофон плюс | 0x017c | KEY_VCR2 | ||||
0x0c 0x00a1 | Один раз | ||||||
0x0c 0x00a2 | Повседневная | ||||||
0x0c 0x00a3 | Еженедельно | ||||||
0x0c 0x00a4 | Ежемесячно | ||||||
0x0c 0x00b0 | Играть в | 0x00cf | KEY_PLAY | 3.0 | 0x007e | KEYCODE_MEDIA_PLAY | |
0x0c 0x00b1 | Пауза | 0x0077 | KEY_PAUSE | 3.0 | 0x0079 | KEYCODE_BREAK | |
0x0c 0x00b2 | Записывать | 0x00a7 | KEY_RECORD | 3.0 | 0x0082 | KEYCODE_MEDIA_RECORD | |
0x0c 0x00b3 | Перемотка вперед | 0x00d0 | KEY_FASTFORWARD | 3.0 | 0x005a | KEYCODE_MEDIA_FAST_FORWARD | |
0x0c 0x00b4 | Перемотка назад | 0x00a8 | KEY_REWIND | 3.0 | 0x0059 | KEYCODE_MEDIA_REWIND | |
0x0c 0x00b5 | Сканировать следующий трек | 0x00a3 | KEY_NEXTSONG | 3.0 | 0x0057 | KEYCODE_MEDIA_NEXT | |
0x0c 0x00b6 | Сканировать предыдущий трек | 0x00a5 | KEY_PREVIOUSSONG | 3.0 | 0x0058 | KEYCODE_MEDIA_PREVIOUS | |
0x0c 0x00b7 | Останавливаться | 0x00a6 | KEY_STOPCD | 3.0 | 0x0056 | KEYCODE_MEDIA_STOP | |
0x0c 0x00b8 | Извлечь | 0x00a1 | KEY_EJECTCD | 3.0 | 0x0081 | KEYCODE_MEDIA_EJECT | |
0x0c 0x00b9 | Случайная игра | ||||||
0x0c 0x00ba | Выберите диск | ||||||
0x0c 0x00bb | Введите диск | ||||||
0x0c 0x00bc | Повторение | 0x01b7 | KEY_MEDIA_REPEAT | ||||
0x0c 0x00be | Трек нормальный | ||||||
0x0c 0x00c0 | Кадр вперед | ||||||
0x0c 0x00c1 | Рамка назад | ||||||
0x0c 0x00c2 | Отметка | ||||||
0x0c 0x00c3 | Очистить отметку | ||||||
0x0c 0x00c4 | Повторить от Марка | ||||||
0x0c 0x00c5 | Вернуться к отметке | ||||||
0x0c 0x00c6 | Поиск Пометить вперед | ||||||
0x0c 0x00c7 | Поиск пометить назад | ||||||
0x0c 0x00c8 | Сброс счетчика | ||||||
0x0c 0x00c9 | Показать счетчик | ||||||
0x0c 0x00ca | Инкремент отслеживания | ||||||
0x0c 0x00cb | Отслеживание декремента | ||||||
0x0c 0x00cc | Остановить / Извлечь | ||||||
0x0c 0x00cd | Воспроизведение / Пауза | 0x00a4 | KEY_PLAYPAUSE | 3.0 | 0x0055 | KEYCODE_MEDIA_PLAY_PAUSE | |
0x0c 0x00ce | Воспроизвести/пропустить | ||||||
0x0c 0x00e2 | Немой | 0x0071 | KEY_MUTE | 3.0 | 0x00a4 | KEYCODE_VOLUME_MUTE | |
0x0c 0x00e5 | Усиление басов | 0x00d1 | KEY_BASSBOOST | ||||
0x0c 0x00e6 | Объемный режим | ||||||
0x0c 0x00e7 | Громкость | ||||||
0x0c 0x00e8 | MPX | ||||||
0x0c 0x00e9 | Увеличение объема | 0x0073 | KEY_VOLUMEUP | 1,6 | 0x0018 | KEYCODE_VOLUME_UP | |
0x0c 0x00ea | Уменьшение громкости | 0x0072 | KEY_VOLUMEDOWN | 1,6 | 0x0019 | KEYCODE_VOLUME_DOWN | |
0x0c 0x0173 | Альтернативный приращение звука | 0x00de | KEYCODE_MEDIA_AUDIO_TRACK | Добавлено в aosp/1365554 | |||
0x0c 0x0181 | AL Конфигурация кнопки запуска. Инструмент | ||||||
0x0c 0x0182 | AL Конфигурация программируемой кнопки. | 0x009c | KEY_BOOKMARKS | 3.0 | 0x00ae | KEYCODE_BOOKMARK | |
0x0c 0x0183 | AL Конфигурация управления потребителями. | 0x00ab | KEY_CONFIG | 4.0.3 | 0x00d1 | KEYCODE_MUSIC | |
0x0c 0x0184 | Текстовый процессор AL | 0x01a5 | KEY_WORDPROCESSOR | ||||
0x0c 0x0185 | AL Текстовый редактор | 0x01a6 | KEY_EDITOR | ||||
0x0c 0x0186 | Электронная таблица AL | 0x01a7 | KEY_SPREADSHEET | ||||
0x0c 0x0187 | Редактор графики AL | 0x01a8 | KEY_GRAPHICSEDITOR | ||||
0x0c 0x0188 | Приложение для презентаций AL | 0x01a9 | KEY_PRESENTATION | ||||
0x0c 0x0189 | Приложение базы данных AL | 0x01aa | KEY_DATABASE | ||||
0x0c 0x018a | AL Читатель электронной почты | 0x009b | KEY_MAIL | 1,6 | 0x0041 | KEYCODE_ENVELOPE | |
0x0c 0x018b | AL Читатель новостей | 0x01ab | KEY_NEWS | ||||
0x0c 0x018c | AL Голосовая почта | 0x01ac | KEY_VOICEMAIL | ||||
0x0c 0x018d | AL Контакты / Адресная книга | 0x01ad | KEY_ADDRESSBOOK | 4.0.3 | 0x00cf | KEYCODE_CONTACTS | |
0x0c 0x018e | AL Календарь / Расписание | 0x018d | KEY_КАЛЕНДАРЬ | 4.0.3 | 0x00d0 | KEYCODE_КАЛЕНДАРЬ | |
0x0c 0x018f | AL Task / Руководитель проекта | ||||||
0x0c 0x0190 | AL Журнал / Журнал / Табель учета рабочего времени | ||||||
0x0c 0x0191 | AL Чековая книжка / Финансы | 0x00db | KEY_FINANCE | ||||
0x0c 0x0192 | Калькулятор AL | 0x008c | KEY_CALC | 4.0.3 | 0x00d2 | KEYCODE_КАЛКУЛЯТОР | |
0x0c 0x0193 | Захват/воспроизведение AL A/V | ||||||
0x0c 0x0194 | AL Браузер локальной машины | 0x0090 | KEY_FILE | ||||
0x0c 0x0195 | AL LAN/WAN Браузер | ||||||
0x0c 0x0196 | AL Интернет-браузер | 0x0096 | KEY_WWW | 1,6 | 0x0040 | KEYCODE_EXPLORER | |
0x0c 0x0197 | AL Удаленная сеть/подключение к провайдеру | ||||||
0x0c 0x0198 | Сетевая конференция AL | ||||||
0x0c 0x0199 | Сетевой чат AL | 0x00d8 | KEY_ЧАТ | ||||
0x0c 0x019a | AL Телефония / Номеронабиратель | ||||||
0x0c 0x019b | Вход в систему | ||||||
0x0c 0x019c | AL Выход из системы | 0x01b1 | KEY_LOGOFF | ||||
0x0c 0x019d | AL Вход/выход из системы | ||||||
0x0c 0x019e | Блокировка терминала AL / хранитель экрана | 0x0098 | KEY_COFFEE | 4.0 | 0x001a | KEYCODE_POWER | |
0x0c 0x019f | Панель управления AL | ||||||
0x0c 0x01a0 | Процессор командной строки AL / Выполнить | ||||||
0x0c 0x01a1 | AL Процесс / Диспетчер задач | ||||||
0x0c 0x01a2 | AL Выберите задачу/приложение | ||||||
0x0c 0x01a3 | AL Следующая задача/приложение | ||||||
0x0c 0x01a4 | AL Предыдущая задача/приложение | ||||||
0x0c 0x01a5 | AL Задача упреждающего останова / приложение. | ||||||
0x0c 0x01a6 | Интегрированный справочный центр AL | 0x008a | KEY_HELP | ||||
0x0c 0x01a7 | AL Документы | 0x00eb | KEY_DOCUMENTS | ||||
0x0c 0x01a8 | AL Тезаурус | ||||||
0x0c 0x01a9 | AL Словарь | ||||||
0x0c 0x01aa | AL Рабочий стол | ||||||
0x0c 0x01ab | АЛ Проверка орфографии | 0x01b0 | KEY_SPELLCHECK | ||||
0x0c 0x01ac | AL Проверка грамматики | ||||||
0x0c 0x01ад | AL Статус беспроводной сети | ||||||
0x0c 0x01ae | Раскладка клавиатуры AL | ||||||
0x0c 0x01af | АЛ Защита от вирусов | ||||||
0x0c 0x01b0 | AL-шифрование | ||||||
0x0c 0x01b1 | AL Экранная заставка | ||||||
0x0c 0x01b2 | AL Тревоги | ||||||
0x0c 0x01b3 | Аль Часы | ||||||
0x0c 0x01b4 | Файловый браузер AL | ||||||
0x0c 0x01b5 | AL Состояние питания | ||||||
0x0c 0x01b6 | Браузер изображений AL | 0x00e2 | KEY_MEDIA | 3.0 | 0x004f | KEYCODE_HEADSETHOOK | |
0x0c 0x01b7 | AL Аудио Браузер | 0x00d5 | KEY_SOUND | 4.0.3 | 0x00d1 | KEYCODE_MUSIC | |
0x0c 0x01b8 | Браузер фильмов AL | ||||||
0x0c 0x01b9 | AL Диспетчер цифровых прав | ||||||
0x0c 0x01ba | Цифровой кошелек AL | ||||||
0x0c 0x01bc | AL Instant Messaging | 0x01ae | KEY_MESSENGER | ||||
0x0c 0x01bd | AL OEM Features / Tips Browser | 0x0166 | KEY_INFO | ||||
0x0c 0x01be | AL OEM Help | ||||||
0x0c 0x01bf | AL Online Community | ||||||
0x0c 0x01c0 | AL Entertainment Content Browser | ||||||
0x0c 0x01c1 | AL Online Shopping Browser | ||||||
0x0c 0x01c2 | AL SmartCard Information / Help | ||||||
0x0c 0x01c3 | AL Market / Finance Browser | ||||||
0x0c 0x01c4 | AL Customized Corp. News Browser | ||||||
0x0c 0x01c5 | AL Online Activity Browser | ||||||
0x0c 0x01c6 | AL Research / Search Browser | ||||||
0x0c 0x01c7 | AL Audio Player | ||||||
0x0c 0x0201 | AC New | 0x00b5 | KEY_NEW | ||||
0x0c 0x0202 | AC Open | 0x0086 | KEY_OPEN | ||||
0x0c 0x0203 | AC Close | 0x00ce | KEY_CLOSE | ||||
0x0c 0x0204 | AC Exit | 0x00ae | KEY_EXIT | ||||
0x0c 0x0205 | AC Maximize | ||||||
0x0c 0x0206 | AC Minimize | ||||||
0x0c 0x0207 | AC Save | 0x00ea | KEY_SAVE | ||||
0x0c 0x0208 | AC Print | 0x00d2 | KEY_PRINT | ||||
0x0c 0x0209 | AC Properties | 0x0082 | KEY_PROPS | ||||
0x0c 0x021a | AC Undo | 0x0083 | KEY_UNDO | ||||
0x0c 0x021b | AC Copy | 0x0085 | KEY_COPY | ||||
0x0c 0x021c | AC Cut | 0x0089 | KEY_CUT | ||||
0x0c 0x021d | AC Paste | 0x0087 | KEY_PASTE | ||||
0x0c 0x021e | AC Select All | ||||||
0x0c 0x021f | AC Find | 0x0088 | KEY_FIND | ||||
0x0c 0x0220 | AC Find and Replace | ||||||
0x0c 0x0221 | AC Search | 0x00d9 | KEY_SEARCH | 1,6 | 0x0054 | KEYCODE_SEARCH | |
0x0c 0x0222 | AC Go To | 0x0162 | KEY_GOTO | ||||
0x0c 0x0223 | AC Home | 0x00ac | KEY_HOMEPAGE | 3.0 | 0x0003 | KEYCODE_HOME | |
0x0c 0x0224 | AC Back | 0x009e | KEY_BACK | 1,6 | 0x0004 | KEYCODE_BACK | |
0x0c 0x0225 | AC Forward | 0x009f | KEY_FORWARD | 3.0 | 0x007d | KEYCODE_FORWARD | |
0x0c 0x0226 | AC Stop | 0x0080 | KEY_STOP | 3.0 | 0x0056 | KEYCODE_MEDIA_STOP | |
0x0c 0x0227 | AC Refresh | 0x00ad | KEY_REFRESH | ||||
0x0c 0x0228 | AC Previous Link | ||||||
0x0c 0x0229 | AC Next Link | ||||||
0x0c 0x022a | AC Bookmarks | 0x009c | KEY_BOOKMARKS | 3.0 | 0x00ae | KEYCODE_BOOKMARK | |
0x0c 0x022b | AC History | ||||||
0x0c 0x022c | AC Subscriptions | ||||||
0x0c 0x022d | AC Zoom In | 0x01a2 | KEY_ZOOMIN | ||||
0x0c 0x022e | AC Zoom Out | 0x01a3 | KEY_ZOOMOUT | ||||
0x0c 0x022f | AC Zoom | 0x01a4 | KEY_ZOOMRESET | 2 | |||
0x0c 0x0230 | AC Full Screen View | ||||||
0x0c 0x0231 | AC Normal View | ||||||
0x0c 0x0232 | AC View Toggle | ||||||
0x0c 0x0233 | AC Scroll Up | 0x00b1 | KEY_SCROLLUP | 3.0 | 0x005c | KEYCODE_PAGE_UP | |
0x0c 0x0234 | AC Scroll Down | 0x00b2 | KEY_SCROLLDOWN | 3.0 | 0x005d | KEYCODE_PAGE_DOWN | |
0x0c 0x0236 | AC Pan Left | ||||||
0x0c 0x0237 | AC Pan Right | ||||||
0x0c 0x0239 | AC New Window | ||||||
0x0c 0x023a | AC Tile Horizontally | ||||||
0x0c 0x023b | AC Tile Vertically | ||||||
0x0c 0x023c | AC Format | ||||||
0x0c 0x023d | AC Edit | ||||||
0x0c 0x023e | AC Bold | ||||||
0x0c 0x023f | AC Italics | ||||||
0x0c 0x0240 | AC Underline | ||||||
0x0c 0x0241 | AC Strikethrough | ||||||
0x0c 0x0242 | AC Subscript | ||||||
0x0c 0x0243 | AC Superscript | ||||||
0x0c 0x0244 | AC All Caps | ||||||
0x0c 0x0245 | AC Rotate | ||||||
0x0c 0x0246 | AC Resize | ||||||
0x0c 0x0247 | AC Flip horizontal | ||||||
0x0c 0x0248 | AC Flip Vertical | ||||||
0x0c 0x0249 | AC Mirror Horizontal | ||||||
0x0c 0x024a | AC Mirror Vertical | ||||||
0x0c 0x024b | AC Font Select | ||||||
0x0c 0x024c | AC Font Color | ||||||
0x0c 0x024d | AC Font Size | ||||||
0x0c 0x024e | AC Justify Left | ||||||
0x0c 0x024f | AC Justify Center H | ||||||
0x0c 0x0250 | AC Justify Right | ||||||
0x0c 0x0251 | AC Justify Block H | ||||||
0x0c 0x0252 | AC Justify Top | ||||||
0x0c 0x0253 | AC Justify Center V | ||||||
0x0c 0x0254 | AC Justify Bottom | ||||||
0x0c 0x0255 | AC Justify Block V | ||||||
0x0c 0x0256 | AC Indent Decrease | ||||||
0x0c 0x0257 | AC Indent Increase | ||||||
0x0c 0x0258 | AC Numbered List | ||||||
0x0c 0x0259 | AC Restart Numbering | ||||||
0x0c 0x025a | AC Bulleted List | ||||||
0x0c 0x025b | AC Promote | ||||||
0x0c 0x025c | AC Demote | ||||||
0x0c 0x025d | AC Yes | ||||||
0x0c 0x025e | AC No | ||||||
0x0c 0x025f | AC Cancel | 0x00df | KEY_CANCEL | ||||
0x0c 0x0260 | AC Catalog | ||||||
0x0c 0x0261 | AC Buy / Checkout | ||||||
0x0c 0x0262 | AC Add to Cart | ||||||
0x0c 0x0263 | AC Expand | ||||||
0x0c 0x0264 | AC Expand All | ||||||
0x0c 0x0265 | AC Collapse | ||||||
0x0c 0x0266 | AC Collapse All | ||||||
0x0c 0x0267 | AC Print Preview | ||||||
0x0c 0x0268 | AC Paste Special | ||||||
0x0c 0x0269 | AC Insert Mode | ||||||
0x0c 0x026a | AC Delete | ||||||
0x0c 0x026b | AC Lock | ||||||
0x0c 0x026c | AC Unlock | ||||||
0x0c 0x026d | AC Protect | ||||||
0x0c 0x026e | AC Unprotect | ||||||
0x0c 0x026f | AC Attach Comment | ||||||
0x0c 0x0270 | AC Delete Comment | ||||||
0x0c 0x0271 | AC View Comment | ||||||
0x0c 0x0272 | AC Select Word | ||||||
0x0c 0x0273 | AC Select Sentence | ||||||
0x0c 0x0274 | AC Select Paragraph | ||||||
0x0c 0x0275 | AC Select Column | ||||||
0x0c 0x0276 | AC Select Row | ||||||
0x0c 0x0277 | AC Select Table | ||||||
0x0c 0x0278 | AC Select Object | ||||||
0x0c 0x0279 | AC Redo / Repeat | 0x00b6 | KEY_REDO | ||||
0x0c 0x027a | AC Sort | ||||||
0x0c 0x027b | AC Sort Ascending | ||||||
0x0c 0x027c | AC Sort Descending | ||||||
0x0c 0x027d | AC Filter | ||||||
0x0c 0x027e | AC Set Clock | ||||||
0x0c 0x027f | AC View Clock | ||||||
0x0c 0x0280 | AC Select Time Zone | ||||||
0x0c 0x0281 | AC Edit Time Zones | ||||||
0x0c 0x0282 | AC Set Alarm | ||||||
0x0c 0x0283 | AC Clear Alarm | ||||||
0x0c 0x0284 | AC Snooze Alarm | ||||||
0x0c 0x0285 | AC Reset Alarm | ||||||
0x0c 0x0286 | AC Synchronize | ||||||
0x0c 0x0287 | AC Send/Receive | ||||||
0x0c 0x0288 | AC Send To | ||||||
0x0c 0x0289 | AC Reply | 0x00e8 | KEY_REPLY | ||||
0x0c 0x028a | AC Reply All | ||||||
0x0c 0x028b | AC Forward Msg | 0x00e9 | KEY_FORWARDMAIL | ||||
0x0c 0x028c | AC Send | 0x00e7 | KEY_SEND | ||||
0x0c 0x028d | AC Attach File | ||||||
0x0c 0x028e | AC Upload | ||||||
0x0c 0x028f | AC Download (Save Target As) | ||||||
0x0c 0x0290 | AC Set Borders | ||||||
0x0c 0x0291 | AC Insert Row | ||||||
0x0c 0x0292 | AC Insert Column | ||||||
0x0c 0x0293 | AC Insert File | ||||||
0x0c 0x0294 | AC Insert Picture | ||||||
0x0c 0x0295 | AC Insert Object | ||||||
0x0c 0x0296 | AC Insert Symbol | ||||||
0x0c 0x0297 | AC Save and Close | ||||||
0x0c 0x0298 | AC Rename | ||||||
0x0c 0x0299 | AC Merge | ||||||
0x0c 0x029a | AC Split | ||||||
0x0c 0x029b | AC Distribute Horizontally | ||||||
0x0c 0x029c | AC Distribute Vertically |
Additional non-HID Mappings
These mappings describe functions that do not appear in HID but for which Linux key codes exist.
LKC | Linux Key Code Name | Версия | AKC | Android Key Code Name | Заметки |
---|---|---|---|---|---|
0x01d0 | KEY_FN | 3.0 | 0x0077 | KEYCODE_FUNCTION | |
0x01d1 | KEY_FN_ESC | 3.0 | 0x006f | KEYCODE_ESCAPE | 3 |
0x01d2 | KEY_FN_F1 | 3.0 | 0x0083 | KEYCODE_F1 | 3 |
0x01d3 | KEY_FN_F2 | 3.0 | 0x0084 | KEYCODE_F2 | 3 |
0x01d4 | KEY_FN_F3 | 3.0 | 0x0085 | KEYCODE_F3 | 3 |
0x01d5 | KEY_FN_F4 | 3.0 | 0x0086 | KEYCODE_F4 | 3 |
0x01d6 | KEY_FN_F5 | 3.0 | 0x0087 | KEYCODE_F5 | 3 |
0x01d7 | KEY_FN_F6 | 3.0 | 0x0088 | KEYCODE_F6 | 3 |
0x01d8 | KEY_FN_F7 | 3.0 | 0x0089 | KEYCODE_F7 | 3 |
0x01d9 | KEY_FN_F8 | 3.0 | 0x008a | KEYCODE_F8 | 3 |
0x01da | KEY_FN_F9 | 3.0 | 0x008b | KEYCODE_F9 | 3 |
0x01db | KEY_FN_F10 | 3.0 | 0x008c | KEYCODE_F10 | 3 |
0x01dc | KEY_FN_F11 | 3.0 | 0x008d | KEYCODE_F11 | 3 |
0x01dd | KEY_FN_F12 | 3.0 | 0x008e | KEYCODE_F12 | 3 |
0x01de | KEY_FN_1 | 3.0 | 0x0008 | KEYCODE_1 | 3 |
0x01df | KEY_FN_2 | 3.0 | 0x0009 | KEYCODE_2 | 3 |
0x01e0 | KEY_FN_D | 3.0 | 0x0020 | KEYCODE_D | 3 |
0x01e1 | KEY_FN_E | 3.0 | 0x0021 | KEYCODE_E | 3 |
0x01e2 | KEY_FN_F | 3.0 | 0x0022 | KEYCODE_F | 3 |
0x01e3 | KEY_FN_S | 3.0 | 0x002f | KEYCODE_S | 3 |
0x01e4 | KEY_FN_B | 3.0 | 0x001e | KEYCODE_B | 3 |
Legacy Unsupported Keys
These mappings appeared in previous versions of Android but were inconsistent with HID or used non-standard Linux key codes. They are no longer supported.
LKC | Linux Key Code Name | Версия | AKC | Android Key Code Name | Заметки |
---|---|---|---|---|---|
0x00db | KEY_EMAIL | 1,6 | 0x004d | KEYCODE_AT | 4 |
"" | "" | 4.0 | 4 | ||
0x00e3 | KEY_STAR | 1,6 | 0x0011 | KEYCODE_STAR | 4 |
"" | "" | 4.0 | 4 | ||
0x00e4 | KEY_SHARP | 1,6 | 0x0012 | KEYCODE_POUND | 4 |
"" | "" | 4.0 | 4 | ||
0x00e5 | KEY_SOFT1 | 1,6 | 0x0052 | KEYCODE_MENU | 4 |
"" | "" | 4.0 | 4 | ||
0x00e6 | KEY_SOFT2 | 1,6 | 0x0002 | KEYCODE_SOFT_RIGHT | 4 |
"" | "" | 4.0 | 4 | ||
0x00e7 | KEY_SEND | 1,6 | 0x0005 | KEYCODE_CALL | 4 |
"" | "" | 4.0 | 4 | ||
0x00e8 | KEY_CENTER | 1,6 | 0x0017 | KEYCODE_DPAD_CENTER | 4 |
"" | "" | 4.0 | 4 | ||
0x00e9 | KEY_HEADSETHOOK | 1,6 | 0x004f | KEYCODE_HEADSETHOOK | 4 |
"" | "" | 4.0 | 4 | ||
0x00ea | KEY_0_5 | 1,6 | 4 | ||
0x00eb | KEY_2_5 | 1,6 | 4 |
Заметки
The Android key code associated with common alphanumeric and symbolic keys may vary based on the keyboard layout and language. For historical reasons, the physical scan codes and HID usages associated with keys on a keyboard are often defined positionally even though the labels printed on those keys may vary from one language to another.
On a US English (QWERTY) keyboard, the top-left alphabetic key is labeled Q. On a French (AZERTY) keyboard, the key in the same position is labeled A. Despite the label, on both keyboards the top-left alphabetic key is referred to using the HID usage 0x07 0x0014 which is mapped to the Linux key code KEY_Q.
When Android is configured with a US English keyboard layout, then the Linux key code KEY_Q will be mapped to the Android key code KEYCODE_Q and will produce the characters 'Q' and 'q'. However, when Android is configured with a French keyboard layout, then the Linux key code KEY_Q will be mapped to the Android key code KEYCODE_A and will produce the characters 'A' and 'a'.
The Android key code typically reflects the language-specific interpretation of the key, so a different Android key code may be used for different languages.
0x0c 0x022f AC Zoom
is defined in the HID as a linear control but the kernel maps it as a key, which is probably incorrect.The Linux function keys
KEY_FN_*
are mapped to simpler key codes but are dispatched with theMETA_FUNCTION
meta state bit set to true.Prior to Android Ice Cream Sandwich 4.0, the default key layout contained mappings for some extra key codes that were not defined in the mainline Linux kernel headers. These mappings have since been removed because these previously undefined key codes have since been assigned different meanings in more recent versions of the Linux kernel.
Sources
- USB HID Usage Tables v1.12
- Linux 2.6.39 kernel: include/linux/input.h, drivers/hid/hid-input.c
- Android ICS: qwerty.kl, Generic.kl, KeyEvent.java