Android는 특수 기능 키패드(음량 및 전원 컨트롤), 컴팩트 내장형 QWERTY 키보드 및 기능성을 모두 갖춘 PC 스타일 키보드를 비롯한 다양한 키보드를 지원합니다.
이 문서에서는 실제 키보드만 설명합니다. 소프트 키보드(입력 방식 편집기)에 관한 정보는 Android SDK를 참고하세요.
키보드 분류
입력 기기는 다음 조건 중 하나를 충족하는 경우 키보드로 분류됩니다.
-
입력 기기가
0~0xff또는KEY_OK~KEY_MAX를 포함하는 키보드에 사용된 모든 Linux 키 코드의 존재를 보고하는 경우 -
입력 기기가
BTN_0~BTN_9,BTN_TRIGGER~BTN_DEAD또는BTN_A~BTN_THUMBR을 포함하는 조이스틱과 게임패드에 사용된 모든 Linux 키 코드의 존재를 보고하는 경우
조이스틱은 현재 키보드로 분류됩니다. 이는 조이스틱과 게임패드 버튼이 키보드 키처럼 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는 자체 키보드 반복을 수행합니다. 자동 반복 기능은 드라이버에서 중지되어야 합니다.
-
키보드 드라이버는 키가 눌렸을 때
EV_MSC와MSC_SCANCODE및 사용을 나타내는 값이나 스캔 코드를 전송하여 HID 사용 또는 하위 수준 스캔 코드를 선택적으로 나타낼 수 있습니다. 이 정보는 현재 Android에서 사용하지 않습니다. -
키보드 드라이버는
EV_LED가 기기에 작성되는 경우 LED 상태 설정을 지원해야 합니다.hid-input드라이버는 이를 자동으로 처리합니다. 작성 시점에는 Android가LED_CAPSLOCK,LED_SCROLLLOCK및LED_NUMLOCK을 사용합니다. 이러한 LED는 실제로 키보드에 관련 표시등이 있는 경우에만 지원해야 합니다. -
내장형 키패드용 키보드 드라이버(예: GPIO 매트릭스 사용)는
EV_KEY이벤트를 전송해야 하며, 이때 기기가 절전 모드로 전환될 때에도 계속해서 눌리는 모든 키의 값을0으로 설정해야 합니다. 그러지 않으면 키가 눌린 상태로 유지되어 자동 반복이 멈추지 않을 수 있습니다.
키보드 작동
다음은 Android의 키보드 작동에 관한 간단한 요약입니다.
-
EventHub는evdev드라이버의 원시 이벤트를 읽고 키보드의 키 레이아웃 맵을 사용하여 Linux 키 코드(간혹 스캔 코드라고도 함)를 Android 키 코드로 매핑합니다. -
InputReader는 원시 이벤트를 소비하고 메타 키 상태를 업데이트합니다. 예를 들어 왼쪽 Shift 키를 누르거나 손을 떼면 리더는 상황에 맞게META_SHIFT_LEFT_ON및META_SHIFT_ON비트를 설정하거나 재설정합니다. -
InputReader는InputDispatcher에 키 이벤트에 대한 내용을 알립니다. -
InputDispatcher는WindowManagerPolicy.interceptKeyBeforeQueueing을 호출하여 키 이벤트를 어떻게 처리하면 좋은지WindowManagerPolicy에 물어봅니다. 이 메서드는 특정 키를 눌렀을 때 기기의 절전 모드를 해제하는 역할을 하는 중요 경로의 일부입니다.EventHub는 이 중요 경로를 따라 wake lock을 효과적으로 유지하여 완료까지 실행되도록 합니다. -
현재
InputFilter를 사용 중인 경우InputDispatcher는 키를 소비하거나 변환할 수 있는 기회를 부여합니다.InputFilter는 시스템 전체에 대한 하위 수준 접근성 정책을 구현하는 데 사용될 수 있습니다. -
InputDispatcher는 디스패치 스레드에서 처리하려는 키를 대기열에 등록합니다. -
InputDispatcher가 키를 대기열에서 등록 해제하면WindowManagerPolicy는WindowManagerPolicy.interceptKeyBeforeDispatching을 호출하여 키 이벤트를 가로챌 수 있는 두 번째 기회를 부여받습니다. 이 메서드는 시스템 바로가기 및 기타 기능을 처리합니다. -
그러면
InputDispatcher는 키 이벤트 대상(포커스가 맞춰진 창)을 식별하고 대상이 준비될 때까지 기다립니다. 그런 다음InputDispatcher는 키 이벤트를 애플리케이션에 전달합니다. -
애플리케이션 내에서는 키 이벤트가 뷰 계층 구조를 pre-IME 키 디스패치의 포커스 뷰로 하향 전파합니다.
-
키 이벤트가 pre-IME 디스패치에서 처리되지 않고 IME가 사용되고 있는 경우에는 키 이벤트가 IME로 전달됩니다.
-
키 이벤트가 IME에 의해 소비되지 않은 경우 키 이벤트는 뷰 계층 구조를 표준 키 디스패치의 포커스 뷰로 하향 전파합니다.
-
애플리케이션은 키 이벤트가 소비되었는지 여부를
InputDispatcher에 다시 보고합니다. 이벤트가 소비되지 않은 경우InputDispatcher는WindowManagerPolicy.dispatchUnhandledKey를 호출하여 '대체' 동작을 적용합니다. 대체 작업에 따라 다른 키 코드를 사용하여 키 이벤트 디스패치 주기를 다시 시작할 수 있습니다. 예를 들어 애플리케이션이KEYCODE_ESCAPE를 처리하지 않는 경우 시스템은 키 이벤트를 대신KEYCODE_BACK으로 재전송할 수 있습니다.
키보드 구성
키보드 동작은 키보드의 키 레이아웃, 키 문자 맵과 입력 기기 구성으로 결정됩니다.
키보드 구성에 참여하는 파일에 관한 자세한 내용은 다음 섹션을 참고하세요.
속성
다음 입력 기기 구성 속성은 키보드에 사용됩니다.
keyboard.layout
정의: keyboard.layout = <name>
입력 기기에 연결된 키 레이아웃 파일의 이름을 지정합니다(.kl 확장자는 예외). 이 파일이 없으면 입력 시스템은 대신 기본 키 레이아웃을 사용합니다.
이름의 공백은 조회 도중 밑줄로 변환됩니다.
자세한 내용은 키 레이아웃 파일 문서를 참고하세요.
keyboard.characterMap
정의: keyboard.characterMap = <name>
입력 기기에 연결된 키 문자 맵 파일의 이름을 지정합니다(.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
키보드가 실제로 연결된 내장형 키보드인지 지정합니다.
기기 이름이 -keypad로 끝나는 경우는 기본값이 1, 나머지 경우에는 0입니다.
내장형 키보드에는 항상 0의 기기 ID가 할당됩니다. 내장형이 아닌 다른 키보드에는 0이 아닌 고유한 기기 ID가 할당됩니다.
내장형 키보드의 ID를 지정하고 값으로 0을 취하는 KeyCharacterMap.BUILT_IN_KEYBOARD 필드와의 호환성을 유지하기 위해서는 내장형 키보드에 0의 ID를 사용하는 것이 중요합니다. 이 필드는 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 이전에는 키보드 입력 매퍼에 어떠한 구성 속성도 사용되지 않았습니다.
모든 키보드는 실제로 연결되고 방향을 인지하는 것으로 가정되었습니다. 기본 키 레이아웃과 키 문자 맵의 이름은 Generic 대신 qwerty로 지정되었습니다. 키 문자 맵 형식도 매우 달랐으며 프레임워크는 PC 스타일 전체 키보드나 외부 키보드를 지원하지 않았습니다.
기기를 Honeycomb으로 업그레이드하는 경우에는 필요한 구성과 키 맵 파일을 생성하거나 업데이트해야 합니다.
HID 사용, Linux 키 코드 및 Android 키 코드
시스템이란 추상화 계층에 따라 여러 다양한 식별자를 사용하는 키를 지칭합니다.
HID 기기의 경우 각 키에 연결된 HID 사용이 있습니다. Linux hid-input 드라이버와 관련 공급업체 및 기기별 HID 드라이버는 Linux 키 코드에 HID 보고서를 파싱하고 HID 사용을 매핑하는 역할을 합니다.
Android는 Linux 커널에서 EV_KEY 이벤트를 읽습니다. 따라서 기기의 키 레이아웃 파일에 따라 각 Linux 키 코드를 해당하는 Android 키 코드로 변환합니다.
키 이벤트가 애플리케이션으로 전송되면 android.view.KeyEvent 인스턴스는 Linux 키 코드를 getScanCode()의 값으로, Android 키 코드를 getKeyCode()의 값으로 보고합니다. 프레임워크의 용도와 관련해서는 getKeyCode()의 값만 중요합니다.
HID 사용 정보는 Android 자체에 의해 사용되거나 애플리케이션으로 전달되지 않습니다.
코드 표
다음 표는 HID 사용, Linux 키 코드 및 Android 키 코드가 어떤 상관관계를 지니는지를 보여줍니다.
LKC 열은 16진수의 Linux 키 코드를 지정합니다.
AKC 열은 16진수의 Android 키 코드를 지정합니다.
참고 열이란 표 뒤에 게시되는 참고사항을 의미합니다.
버전 열은 이 키를 기본 키 맵에 포함한 최초의 Android 플랫폼 버전을 지정합니다. 기본 키 맵이 버전 간에 변경된 경우에는 여러 행이 표시됩니다. 표시된 가장 오래된 버전은 1.6입니다.
-
Gingerbread(2.3) 이하 버전에서는 기본 키 맵이
qwerty.kl이었습니다. 이 키 맵은 Android 에뮬레이터에만 사용하도록 되어 있었으며 임의의 외부 키보드에는 사용하면 안 되었습니다. 그럼에도 불구하고 일부 OEM은 플랫폼에 블루투스 키보드 지원을 추가하고qwerty.kl에 의존하여 필요한 키보드 매핑을 제공했습니다. 따라서 이러한 오래된 매핑은 이러한 특정 기기의 주변기기를 빌드하는 OEM에게 관심의 대상일 수 있습니다. 매핑은 현재의 매핑, 특히HOME키의 취급과 관련하여 상당한 차이를 보입니다. 모든 새로운 주변기기는 Honeycomb 또는 최신 키 맵(표준 HID)에 따라 개발하는 것이 좋습니다. -
Honeycomb(3.0)부터는 기본 키 맵이
Generic.kl입니다. 이 키 맵은 전체 PC 스타일 키보드를 지원하도록 설계되었습니다. 표준 HID 키보드의 기능 대부분은 즉시 작동해야 합니다.
키 코드 매핑은 Linux 커널 및 Android의 버전에 걸쳐 다를 수 있습니다. Android 기본 키 맵에 변경사항이 발생한 것으로 알려진 경우 해당 변경사항이 버전 열에 표시됩니다.
기기별 HID 드라이버 및 키 맵은 여기에 표시된 다양한 매핑을 적용할 수 있습니다.
HID 키보드 및 키패드 페이지(0x07)
| HID 사용 | HID 사용 이름 | LKC | Linux 키 코드 이름 | 버전 | AKC | Android 키 코드 이름 | 참고 |
|---|---|---|---|---|---|---|---|
| 0x07 0x0001 | 키보드 오류 롤오버 | ||||||
| 0x07 0x0002 | 키보드 POST 실패 | ||||||
| 0x07 0x0003 | 키보드 오류 지정되지 않음 | ||||||
| 0x07 0x0004 | 키보드 a 및 A | 0x001e | KEY_A | 1.6 | 0x001d | KEYCODE_A | 1 |
| 0x07 0x0005 | 키보드 b 및 B | 0x0030 | KEY_B | 1.6 | 0x001e | KEYCODE_B | 1 |
| 0x07 0x0006 | 키보드 c 및 C | 0x002e | KEY_C | 1.6 | 0x001f | KEYCODE_C | 1 |
| 0x07 0x0007 | 키보드 d 및 D | 0x0020 | KEY_D | 1.6 | 0x0020 | KEYCODE_D | 1 |
| 0x07 0x0008 | 키보드 e 및 E | 0x0012 | KEY_E | 1.6 | 0x0021 | KEYCODE_E | 1 |
| 0x07 0x0009 | 키보드 f 및 F | 0x0021 | KEY_F | 1.6 | 0x0022 | KEYCODE_F | 1 |
| 0x07 0x000a | 키보드 g 및 G | 0x0022 | KEY_G | 1.6 | 0x0023 | KEYCODE_G | 1 |
| 0x07 0x000b | 키보드 h 및 H | 0x0023 | KEY_H | 1.6 | 0x0024 | KEYCODE_H | 1 |
| 0x07 0x000c | 키보드 i 및 I | 0x0017 | KEY_I | 1.6 | 0x0025 | KEYCODE_I | 1 |
| 0x07 0x000d | 키보드 j 및 J | 0x0024 | KEY_J | 1.6 | 0x0026 | KEYCODE_J | 1 |
| 0x07 0x000e | 키보드 k 및 K | 0x0025 | KEY_K | 1.6 | 0x0027 | KEYCODE_K | 1 |
| 0x07 0x000f | 키보드 L 및 L | 0x0026 | KEY_L | 1.6 | 0x0028 | KEYCODE_L | 1 |
| 0x07 0x0010 | 키보드 m 및 M | 0x0032 | KEY_M | 1.6 | 0x0029 | KEYCODE_M | 1 |
| 0x07 0x0011 | 키보드 n 및 N | 0x0031 | KEY_N | 1.6 | 0x002a | KEYCODE_N | 1 |
| 0x07 0x0012 | 키보드 o 및 O | 0x0018 | KEY_O | 1.6 | 0x002b | KEYCODE_O | 1 |
| 0x07 0x0013 | 키보드 p 및 P | 0x0019 | KEY_P | 1.6 | 0x002c | KEYCODE_P | 1 |
| 0x07 0x0014 | 키보드 q 및 Q | 0x0010 | KEY_Q | 1.6 | 0x002d | KEYCODE_Q | 1 |
| 0x07 0x0015 | 키보드 r 및 R | 0x0013 | KEY_R | 1.6 | 0x002e | KEYCODE_R | 1 |
| 0x07 0x0016 | 키보드 s 및 S | 0x001f | KEY_S | 1.6 | 0x002f | KEYCODE_S | 1 |
| 0x07 0x0017 | 키보드 t 및 T | 0x0014 | KEY_T | 1.6 | 0x0030 | KEYCODE_T | 1 |
| 0x07 0x0018 | 키보드 u 및 U | 0x0016 | KEY_U | 1.6 | 0x0031 | KEYCODE_U | 1 |
| 0x07 0x0019 | 키보드 v 및 V | 0x002f | KEY_V | 1.6 | 0x0032 | KEYCODE_V | 1 |
| 0x07 0x001a | 키보드 w 및 W | 0x0011 | KEY_W | 1.6 | 0x0033 | KEYCODE_W | 1 |
| 0x07 0x001b | 키보드 x 및 X | 0x002d | KEY_X | 1.6 | 0x0034 | KEYCODE_X | 1 |
| 0x07 0x001c | 키보드 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 | 키보드 Return(ENTER) | 0x001c | KEY_ENTER | 1.6 | 0x0042 | KEYCODE_ENTER | 1 |
| 0x07 0x0029 | 키보드 ESCAPE | 0x0001 | KEY_ESC | 3.0 | 0x006f | KEYCODE_ESCAPE | |
| "" | "" | "" | "" | 2.3 | 0x0004 | KEYCODE_BACK | |
| 0x07 0x002a | 키보드 DELETE(백스페이스) | 0x000e | KEY_BACKSPACE | 1.6 | 0x0043 | KEYCODE_DEL | |
| 0x07 0x002b | 키보드 Tab | 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_SEMICOLON | 1.6 | 0x004a | KEYCODE_SEMICOLON | 1 |
| 0x07 0x0034 | 키보드 ' 및 " | 0x0028 | KEY_APOSTROPHE | 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 | Keyboard 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 | 키보드 Print Screen | 0x0063 | KEY_SYSRQ | 3.0 | 0x0078 | KEYCODE_SYSRQ | |
| 0x07 0x0047 | 키보드 Scroll Lock | 0x0046 | KEY_SCROLLLOCK | 3.0 | 0x0074 | KEYCODE_SCROLL_LOCK | |
| 0x07 0x0048 | 키보드 Pause | 0x0077 | KEY_PAUSE | 3.0 | 0x0079 | KEYCODE_BREAK | |
| 0x07 0x0049 | 키보드 Insert | 0x006e | KEY_INSERT | 3.0 | 0x007c | KEYCODE_INSERT | |
| 0x07 0x004a | 키보드 Home | 0x0066 | KEY_HOME | 3.0 | 0x007a | KEYCODE_MOVE_HOME | |
| "" | "" | "" | "" | 1.6 | 0x0003 | KEYCODE_HOME | |
| 0x07 0x004b | 키보드 Page Up | 0x0068 | KEY_PAGEUP | 3.0 | 0x005c | KEYCODE_PAGE_UP | |
| 0x07 0x004c | 키보드 Delete Forward | 0x006f | KEY_DELETE | 3.0 | 0x0070 | KEYCODE_FORWARD_DEL | |
| 0x07 0x004d | 키보드 End | 0x006b | KEY_END | 3.0 | 0x007b | KEYCODE_MOVE_END | |
| "" | "" | "" | "" | 1.6 | 0x0006 | KEYCODE_ENDCALL | |
| 0x07 0x004e | 키보드 Page Down | 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 | 키패드 ENTER | 0x0060 | KEY_KPENTER | 3.0 | 0x00a0 | KEYCODE_NUMPAD_ENTER | |
| 0x07 0x0059 | 키패드 1 및 End | 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 0x005c | 키패드 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 및 Home | 0x0047 | KEY_KP7 | 3.0 | 0x0097 | KEYCODE_NUMPAD_7 | |
| 0x07 0x0060 | 키패드 8 및 위쪽 화살표 | 0x0048 | KEY_KP8 | 3.0 | 0x0098 | KEYCODE_NUMPAD_8 | |
| 0x07 0x0061 | 키패드 9 및 Page Up | 0x0049 | KEY_KP9 | 3.0 | 0x0099 | KEYCODE_NUMPAD_9 | |
| 0x07 0x0062 | 키패드 0 및 Insert | 0x0052 | KEY_KP0 | 3.0 | 0x0090 | KEYCODE_NUMPAD_0 | |
| 0x07 0x0063 | 키패드 . 및 Delete | 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 | Keyboard 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 0x007c | 키보드 복사 | 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 | 키보드 Scroll Lock 잠금 | ||||||
| 0x07 0x0085 | 키패드 쉼표 | 0x0079 | KEY_KPCOMMA | 3.0 | 0x009f | KEYCODE_NUMPAD_COMMA | |
| 0x07 0x0086 | 키패드 등호 | ||||||
| 0x07 0x0087 | 키보드 International1 | 0x0059 | KEY_RO | ||||
| 0x07 0x0088 | 키보드 International2 | 0x005d | KEY_KATAKANAHIRAGANA | ||||
| 0x07 0x0089 | 키보드 International3 | 0x007c | KEY_YEN | ||||
| 0x07 0x008a | 키보드 International4 | 0x005c | KEY_HENKAN | ||||
| 0x07 0x008b | 키보드 International5 | 0x005e | KEY_MUHENKAN | ||||
| 0x07 0x008c | 키보드 International6 | 0x005f | KEY_KPJPCOMMA | ||||
| 0x07 0x008d | 키보드 International7 | ||||||
| 0x07 0x008e | 키보드 International8 | ||||||
| 0x07 0x008f | 키보드 International9 | ||||||
| 0x07 0x0090 | 키보드 LANG1 | 0x007a | KEY_HANGEUL | ||||
| 0x07 0x0091 | 키보드 LANG2 | 0x007b | KEY_HANJA | ||||
| 0x07 0x0092 | 키보드 LANG3 | 0x005a | KEY_KATAKANA | ||||
| 0x07 0x0093 | 키보드 LANG4 | 0x005b | KEY_HIRAGANA | ||||
| 0x07 0x0094 | 키보드 LANG5 | 0x0055 | KEY_ZENKAKUHANKAKU | ||||
| 0x07 0x0095 | 키보드 LANG6 | ||||||
| 0x07 0x0096 | 키보드 LANG7 | ||||||
| 0x07 0x0097 | 키보드 LANG8 | ||||||
| 0x07 0x0098 | 키보드 LANG9 | ||||||
| 0x07 0x0099 | 키보드 대체 삭제 | ||||||
| 0x07 0x009a | 키보드 SysReq/Attention | ||||||
| 0x07 0x009b | 키보드 취소 | ||||||
| 0x07 0x009c | 키보드 지우기 | ||||||
| 0x07 0x009d | 키보드 이전 | ||||||
| 0x07 0x009e | 키보드 반환 | ||||||
| 0x07 0x009f | 키보드 구분자 | ||||||
| 0x07 0x00a0 | 키보드 Out | ||||||
| 0x07 0x00a1 | 키보드 Oper | ||||||
| 0x07 0x00a2 | 키보드 지우기/다시 | ||||||
| 0x07 0x00a3 | 키보드 CrSel/Props | ||||||
| 0x07 0x00a4 | 키보드 ExSel | ||||||
| 0x07 0x00b0 | 키패드 00 | ||||||
| 0x07 0x00b1 | 키패드 000 | ||||||
| 0x07 0x00b2 | 1,000 구분자 | ||||||
| 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 | 키패드 Tab | ||||||
| 0x07 0x00bb | 키패드 백스페이스 | ||||||
| 0x07 0x00bc | 키패드 A | ||||||
| 0x07 0x00bd | 키패드 B | ||||||
| 0x07 0x00be | 키패드 C | ||||||
| 0x07 0x00bf | 키패드 D | ||||||
| 0x07 0x00c0 | 키패드 E | ||||||
| 0x07 0x00c1 | 키패드 F | ||||||
| 0x07 0x00c2 | 키패드 XOR | ||||||
| 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 0x00da | 키패드 바이너리 | ||||||
| 0x07 0x00db | 키패드 8진수 | ||||||
| 0x07 0x00dc | 키패드 십진수 | ||||||
| 0x07 0x00dd | 키패드 16진수 | ||||||
| 0x07 0x00e0 | 키보드 왼쪽 Control | 0x001d | KEY_LEFTCTRL | 3.0 | 0x0071 | KEYCODE_CTRL_LEFT | |
| 0x07 0x00e1 | 키보드 왼쪽 Shift | 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 | 키보드 오른쪽 Control | 0x0061 | KEY_RIGHTCTRL | 3.0 | 0x0072 | KEYCODE_CTRL_RIGHT | |
| 0x07 0x00e5 | 키보드 오른쪽 Shift | 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_CALCULATOR |
HID 일반 데스크톱 페이지(0x01)
| HID 사용 | HID 사용 이름 | LKC | Linux 키 코드 이름 | 버전 | AKC | 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 | 시스템 디스플레이 전환 내부/외부 | ||||||
| 0x01 0x00b6 | 시스템 디스플레이 전환 기본/보조 | ||||||
| 0x01 0x00b7 | 시스템 디스플레이 LCD 자동 확장 |
HID 고객 페이지(0x0c)
| HID 사용 | HID 사용 이름 | LKC | Linux 키 코드 이름 | 버전 | AKC | 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 | PIP 모드 전환 | 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_PC | ||||
| 0x0c 0x0089 | 미디어 TV 선택 | 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 | 미디어 프로그램 가이드 선택 | 0x016a | KEY_PROGRAM | 3.0 | 0x00ac | KEYCODE_GUIDE | |
| 0x0c 0x008e | 미디어 동영상폰 선택 | 0x01a0 | KEY_VIDEOPHONE | ||||
| 0x0c 0x008f | 미디어 게임 선택 | 0x01a1 | KEY_GAMES | ||||
| 0x0c 0x0090 | 미디어 메시지 선택 | 0x8004060c | KEY_MEMO | ||||
| 0x0c 0x0091 | 미디어 CD 선택 | 0x017f | KEY_CD | ||||
| 0x0c 0x0092 | 미디어 VCR 선택 | 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 | VCR 플러스 | 0x017c | KEY_VCR2 | ||||
| 0x0c 0x00a1 | 1번 | ||||||
| 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 | Bass Boost | 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_CALENDAR | 4.0.3 | 0x00d0 | KEYCODE_CALENDAR | |
| 0x0c 0x018f | AL 작업/프로젝트 관리자 | ||||||
| 0x0c 0x0190 | AL 로그/저널/타임카드 | ||||||
| 0x0c 0x0191 | AL 수표장/재무 | 0x00db | KEY_FINANCE | ||||
| 0x0c 0x0192 | AL 계산기 | 0x008c | KEY_CALC | 4.0.3 | 0x00d2 | KEYCODE_CALCULATOR | |
| 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 원격 네트워킹/ISP 연결 | ||||||
| 0x0c 0x0198 | AL 네트워크 컨퍼런스 | ||||||
| 0x0c 0x0199 | AL 네트워크 채팅 | 0x00d8 | KEY_CHAT | ||||
| 0x0c 0x019a | AL 전화/다이얼러 | ||||||
| 0x0c 0x019b | AL 로그온 | ||||||
| 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 | AL 맞춤법 검사 | 0x01b0 | KEY_SPELLCHECK | ||||
| 0x0c 0x01ac | AL 문법 검사 | ||||||
| 0x0c 0x01ad | AL 무선 상태 | ||||||
| 0x0c 0x01ae | AL 키보드 레이아웃 | ||||||
| 0x0c 0x01af | AL 바이러스 방지 | ||||||
| 0x0c 0x01b0 | AL 암호화 | ||||||
| 0x0c 0x01b1 | AL 화면 보호기 | ||||||
| 0x0c 0x01b2 | AL 알람 | ||||||
| 0x0c 0x01b3 | AL 시계 | ||||||
| 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 Digital Wallet | ||||||
| 0x0c 0x01bc | AL 채팅 | 0x01ae | KEY_MESSENGER | ||||
| 0x0c 0x01bd | AL OEM 기능/도움말 브라우저 | 0x0166 | KEY_INFO | ||||
| 0x0c 0x01be | AL OEM 도움말 | ||||||
| 0x0c 0x01bf | AL 온라인 커뮤니티 | ||||||
| 0x0c 0x01c0 | AL 엔터테인먼트 콘텐츠 브라우저 | ||||||
| 0x0c 0x01c1 | AL 온라인 쇼핑 브라우저 | ||||||
| 0x0c 0x01c2 | AL SmartCard 정보/도움말 | ||||||
| 0x0c 0x01c3 | AL 마켓/금융 브라우저 | ||||||
| 0x0c 0x01c4 | AL Customized Corp. 뉴스 브라우저 | ||||||
| 0x0c 0x01c5 | AL 온라인 활동 브라우저 | ||||||
| 0x0c 0x01c6 | AL 리서치/검색 브라우저 | ||||||
| 0x0c 0x01c7 | AL 오디오 플레이어 | ||||||
| 0x0c 0x0201 | AC New | 0x00b5 | KEY_NEW | ||||
| 0x0c 0x0202 | AC 열기 | 0x0086 | KEY_OPEN | ||||
| 0x0c 0x0203 | AC 닫기 | 0x00ce | KEY_CLOSE | ||||
| 0x0c 0x0204 | AC 종료 | 0x00ae | KEY_EXIT | ||||
| 0x0c 0x0205 | AC 최대화 | ||||||
| 0x0c 0x0206 | AC 최소화 | ||||||
| 0x0c 0x0207 | AC 저장 | 0x00ea | KEY_SAVE | ||||
| 0x0c 0x0208 | AC 인쇄 | 0x00d2 | KEY_PRINT | ||||
| 0x0c 0x0209 | AC 속성 | 0x0082 | KEY_PROPS | ||||
| 0x0c 0x021a | AC 실행 취소 | 0x0083 | KEY_UNDO | ||||
| 0x0c 0x021b | AC 복사 | 0x0085 | KEY_COPY | ||||
| 0x0c 0x021c | AC 자르기 | 0x0089 | KEY_CUT | ||||
| 0x0c 0x021d | AC 붙여넣기 | 0x0087 | KEY_PASTE | ||||
| 0x0c 0x021e | AC 모두 선택 | ||||||
| 0x0c 0x021f | AC 찾기 | 0x0088 | KEY_FIND | ||||
| 0x0c 0x0220 | AC 찾기 및 바꾸기 | ||||||
| 0x0c 0x0221 | AC 검색 | 0x00d9 | KEY_SEARCH | 1.6 | 0x0054 | KEYCODE_SEARCH | |
| 0x0c 0x0222 | AC 다음으로 이동: | 0x0162 | KEY_GOTO | ||||
| 0x0c 0x0223 | AC 홈 | 0x00ac | KEY_HOMEPAGE | 3.0 | 0x0003 | KEYCODE_HOME | |
| 0x0c 0x0224 | AC 뒤로 | 0x009e | KEY_BACK | 1.6 | 0x0004 | KEYCODE_BACK | |
| 0x0c 0x0225 | AC 앞으로 | 0x009f | KEY_FORWARD | 3.0 | 0x007d | KEYCODE_FORWARD | |
| 0x0c 0x0226 | AC 중지 | 0x0080 | KEY_STOP | 3.0 | 0x0056 | KEYCODE_MEDIA_STOP | |
| 0x0c 0x0227 | AC 새로고침 | 0x00ad | KEY_REFRESH | ||||
| 0x0c 0x0228 | AC 이전 링크 | ||||||
| 0x0c 0x0229 | AC 다음 링크 | ||||||
| 0x0c 0x022a | AC 북마크 | 0x009c | KEY_BOOKMARKS | 3.0 | 0x00ae | KEYCODE_BOOKMARK | |
| 0x0c 0x022b | AC 기록 | ||||||
| 0x0c 0x022c | AC 구독 | ||||||
| 0x0c 0x022d | AC 확대 | 0x01a2 | KEY_ZOOMIN | ||||
| 0x0c 0x022e | AC 축소 | 0x01a3 | KEY_ZOOMOUT | ||||
| 0x0c 0x022f | AC 확대/축소 | 0x01a4 | KEY_ZOOMRESET | 2 | |||
| 0x0c 0x0230 | AC 전체 화면 뷰 | ||||||
| 0x0c 0x0231 | AC 기본 뷰 | ||||||
| 0x0c 0x0232 | AC 보기 전환 | ||||||
| 0x0c 0x0233 | AC 위로 스크롤 | 0x00b1 | KEY_SCROLLUP | 3.0 | 0x005c | KEYCODE_PAGE_UP | |
| 0x0c 0x0234 | AC 아래로 스크롤 | 0x00b2 | KEY_SCROLLDOWN | 3.0 | 0x005d | KEYCODE_PAGE_DOWN | |
| 0x0c 0x0236 | AC 왼쪽으로 이동 | ||||||
| 0x0c 0x0237 | AC 오른쪽으로 이동 | ||||||
| 0x0c 0x0239 | AC 새 창 | ||||||
| 0x0c 0x023a | AC 타일 수평 | ||||||
| 0x0c 0x023b | AC 타일 수직 | ||||||
| 0x0c 0x023c | AC 형식 | ||||||
| 0x0c 0x023d | AC 수정 | ||||||
| 0x0c 0x023e | AC 굵게 | ||||||
| 0x0c 0x023f | AC 기울임꼴 | ||||||
| 0x0c 0x0240 | AC 밑줄 | ||||||
| 0x0c 0x0241 | AC 취소선 | ||||||
| 0x0c 0x0242 | AC 아래 첨자 | ||||||
| 0x0c 0x0243 | AC 위 첨자 | ||||||
| 0x0c 0x0244 | AC 전부 대문자 | ||||||
| 0x0c 0x0245 | AC 회전 | ||||||
| 0x0c 0x0246 | AC 크기 조절 | ||||||
| 0x0c 0x0247 | AC 수평 반전 | ||||||
| 0x0c 0x0248 | AC 수직 반전 | ||||||
| 0x0c 0x0249 | AC 수평 미러링 | ||||||
| 0x0c 0x024a | AC 수직 미러링 | ||||||
| 0x0c 0x024b | AC 글꼴 선택 | ||||||
| 0x0c 0x024c | AC 글꼴 색상 | ||||||
| 0x0c 0x024d | AC 글꼴 크기 | ||||||
| 0x0c 0x024e | AC 왼쪽 맞춤 | ||||||
| 0x0c 0x024f | AC 중앙 맞춤 H | ||||||
| 0x0c 0x0250 | AC 오른쪽 맞춤 | ||||||
| 0x0c 0x0251 | AC 블록 맞춤 H | ||||||
| 0x0c 0x0252 | AC 상단 맞춤 | ||||||
| 0x0c 0x0253 | AC 중앙 맞춤 V | ||||||
| 0x0c 0x0254 | AC 하단 맞춤 | ||||||
| 0x0c 0x0255 | AC 블록 맞춤 V | ||||||
| 0x0c 0x0256 | AC 들여쓰기 감소 | ||||||
| 0x0c 0x0257 | AC 들여쓰기 증가 | ||||||
| 0x0c 0x0258 | AC 번호 매기기 목록 | ||||||
| 0x0c 0x0259 | AC 번호매김 다시 시작 | ||||||
| 0x0c 0x025a | AC 글머리기호 목록 | ||||||
| 0x0c 0x025b | AC 순위 올리기 | ||||||
| 0x0c 0x025c | AC 순위 내리기 | ||||||
| 0x0c 0x025d | AC 예 | ||||||
| 0x0c 0x025e | AC 번호 | ||||||
| 0x0c 0x025f | AC 취소 | 0x00df | KEY_CANCEL | ||||
| 0x0c 0x0260 | AC 카탈로그 | ||||||
| 0x0c 0x0261 | AC 구매/결제 | ||||||
| 0x0c 0x0262 | AC 장바구니에 추가 | ||||||
| 0x0c 0x0263 | AC 확장 | ||||||
| 0x0c 0x0264 | AC 모두 펼치기 | ||||||
| 0x0c 0x0265 | AC 접기 | ||||||
| 0x0c 0x0266 | AC 모두 접기 | ||||||
| 0x0c 0x0267 | AC 인쇄 미리보기 | ||||||
| 0x0c 0x0268 | AC 선택하여 붙여넣기 | ||||||
| 0x0c 0x0269 | AC 삽입 모드 | ||||||
| 0x0c 0x026a | AC 삭제 | ||||||
| 0x0c 0x026b | AC 잠금 | ||||||
| 0x0c 0x026c | AC 잠금 해제 | ||||||
| 0x0c 0x026d | AC 보호 | ||||||
| 0x0c 0x026e | AC 보호 해제 | ||||||
| 0x0c 0x026f | AC 댓글 추가 | ||||||
| 0x0c 0x0270 | AC 댓글 삭제 | ||||||
| 0x0c 0x0271 | AC 댓글 보기 | ||||||
| 0x0c 0x0272 | AC 단어 선택 | ||||||
| 0x0c 0x0273 | AC 문장 선택 | ||||||
| 0x0c 0x0274 | AC 단락 선택 | ||||||
| 0x0c 0x0275 | AC 열 선택 | ||||||
| 0x0c 0x0276 | AC 행 선택 | ||||||
| 0x0c 0x0277 | AC 표 선택 | ||||||
| 0x0c 0x0278 | AC 객체 선택 | ||||||
| 0x0c 0x0279 | AC 재실행/반복 | 0x00b6 | KEY_REDO | ||||
| 0x0c 0x027a | AC 정렬 | ||||||
| 0x0c 0x027b | AC 오름차순 정렬 | ||||||
| 0x0c 0x027c | AC 내림차순 정렬 | ||||||
| 0x0c 0x027d | AC 필터 | ||||||
| 0x0c 0x027e | AC 시계 설정 | ||||||
| 0x0c 0x027f | AC 시계 보기 | ||||||
| 0x0c 0x0280 | AC 시간대 선택 | ||||||
| 0x0c 0x0281 | AC 시간대 수정 | ||||||
| 0x0c 0x0282 | AC 알람 설정 | ||||||
| 0x0c 0x0283 | AC 알람 지우기 | ||||||
| 0x0c 0x0284 | AC 알람 일시 중지 | ||||||
| 0x0c 0x0285 | AC 알람 재설정 | ||||||
| 0x0c 0x0286 | AC 동기화 | ||||||
| 0x0c 0x0287 | AC 전송/수신 | ||||||
| 0x0c 0x0288 | AC 다음으로 전송: | ||||||
| 0x0c 0x0289 | AC 답장 | 0x00e8 | KEY_REPLY | ||||
| 0x0c 0x028a | AC 전체답장 | ||||||
| 0x0c 0x028b | AC 메시지 전달 | 0x00e9 | KEY_FORWARDMAIL | ||||
| 0x0c 0x028c | AC 전송 | 0x00e7 | KEY_SEND | ||||
| 0x0c 0x028d | AC 파일 첨부 | ||||||
| 0x0c 0x028e | AC 업로드 | ||||||
| 0x0c 0x028f | AC 다운로드(다른 이름으로 대상 저장) | ||||||
| 0x0c 0x0290 | AC 테두리 설정 | ||||||
| 0x0c 0x0291 | AC 행 삽입 | ||||||
| 0x0c 0x0292 | AC 열 삽입 | ||||||
| 0x0c 0x0293 | AC 파일 삽입 | ||||||
| 0x0c 0x0294 | AC 사진 삽입 | ||||||
| 0x0c 0x0295 | AC 객체 삽입 | ||||||
| 0x0c 0x0296 | AC 기호 삽입 | ||||||
| 0x0c 0x0297 | AC 저장 후 닫기 | ||||||
| 0x0c 0x0298 | AC 이름 바꾸기 | ||||||
| 0x0c 0x0299 | AC 병합 | ||||||
| 0x0c 0x029a | AC 분할 | ||||||
| 0x0c 0x029b | AC 가로로 배치 | ||||||
| 0x0c 0x029c | AC 세로로 배치 |
추가적인 비 HID 매핑
이 매핑은 HID에 표시되지 않지만 관련 Linux 키 코드가 존재하는 기능을 설명합니다.
| LKC | Linux 키 코드 이름 | 버전 | AKC | Android 키 코드 이름 | 참고 |
|---|---|---|---|---|---|
| 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 |
레거시 지원되지 않는 키
이 매핑은 Android의 이전 버전에는 표시되었지만 HID와 불일치했거나 비표준 Linux 키 코드를 사용했습니다. 이 매핑은 더 이상 지원되지 않습니다.
| LKC | Linux 키 코드 이름 | 버전 | AKC | Android 키 코드 이름 | 참고 |
|---|---|---|---|---|---|
| 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 |
참고
-
일반적인 영숫자 및 기호 키에 연결된 Android 키 코드는 키보드 레이아웃 및 언어에 따라 다를 수 있습니다. 과거와 관련된 이유로 키보드의 키에 연결된 실제 스캔 코드 및 HID 사용은 키에 대해 출력된 라벨이 언어마다 다를 수 있음에도 불구하고 위치를 기준으로 정의되는 경우가 많았습니다.
미국 영어(QWERTY) 키보드에는 왼쪽 상단의 알파벳 키가 Q로 표시됩니다. 프랑스어(AZERTY) 키보드에는 같은 위치의 키가 A로 표시됩니다. 표시와 상관없이 두 키보드에서는 왼쪽 상단의 알파벳 키가 Linux 키 코드 KEY_Q에 매핑된 HID 사용 0x07 0x0014를 지칭합니다.
Android가 미국 영어 키보드 레이아웃으로 구성된 경우 Linux 키 코드 KEY_Q가 Android 키 코드 KEYCODE_Q에 매핑되고 문자 'Q' 및 'q'를 생성합니다. 하지만 Android가 프랑스어 키보드 레이아웃으로 구성된 경우에는 Linux 키 코드 KEY_Q가 Android 키 코드 KEYCODE_A에 매핑되고 문자 'A' 및 'a'를 생성합니다.
Android 키 코드는 일반적으로 키의 언어별 해석을 반영하므로 언어마다 다른 Android 키 코드가 사용될 수 있습니다.
-
0x0c 0x022f AC Zoom은 HID에서 선형 컨트롤로 정의되지만 커널은 이를 키로 매핑합니다(잘못되었을 가능성이 큼). -
Linux 기능 키
KEY_FN_*은 훨씬 단순한 키 코드에 매핑되지만META_FUNCTION메타 상태 비트가 true로 설정된 상태로 전송됩니다. -
Android Ice Cream Sandwich 4.0 이전에는 기본 키 레이아웃에 메인라인 Linux 커널 헤더에서 정의되지 않은 몇몇 추가 키 코드의 매핑이 포함되었습니다. 이러한 매핑은 이후에 제거되었습니다. 이전에 정의되지 않은 이러한 키 코드가 이후에는 Linux 커널 최신 버전의 여러 의미에 할당되었기 때문입니다.
소스
- USB HID 사용 표 v1.12
- Linux 2.6.39 커널: include/linux/input.h, drivers/hid/hid-input.c
- Android ICS: qwerty.kl, Generic.kl, KeyEvent.java