Dispositivi con tastiera

Android supporta una varietà di tastiere, incluse le funzioni speciali tastiere (controlli volume e accensione), tastiere QWERTY compatte incorporate e tastiere esterne in stile PC con funzionalità complete.

Questo documento descrive solo le tastiere fisiche. Fai riferimento all'SDK Android per informazioni sulle tastiere software (Input Method Editor).

Classificazione della tastiera

Un dispositivo di input viene classificato come tastiera nei seguenti casi: condizioni:

  • Il dispositivo di input segnala la presenza di eventuali codici chiave Linux utilizzati sulle tastiere inclusi da 0 a 0xff o da KEY_OK a KEY_MAX.

  • Il dispositivo di input segnala la presenza di eventuali codici chiave Linux utilizzati sui joystick. e gamepad tra cui da BTN_0 a BTN_9, da BTN_TRIGGER a BTN_DEAD, oppure da BTN_A a BTN_THUMBR.

I joystick sono attualmente classificati come tastiere perché i pulsanti del joystick e del gamepad sono segnalati dagli eventi EV_KEY allo stesso modo in cui vengono segnalati i tasti della tastiera. Pertanto, Anche i joystick e i gamepad utilizzano i file delle mappe chiave per la configurazione.

Una volta classificato un dispositivo di input come tastiera, il sistema carica il file di configurazione del dispositivo di input e layout di tastiera per la tastiera.

Il sistema prova quindi a determinare le caratteristiche aggiuntive del dispositivo.

  • Se il dispositivo di input ha tasti mappati a KEYCODE_Q, i tasti dispositivo è considerato avere un tastierino alfabetico (anziché un numero). La funzionalità del tastierino è riportata nella risorsa Configuration come KEYBOARD_QWERTY.

  • Se il dispositivo di input ha tasti mappati a KEYCODE_DPAD_UP, KEYCODE_DPAD_DOWN, KEYCODE_DPAD_LEFT, KEYCODE_DPAD_RIGHT e KEYCODE_DPAD_CENTER (devono essere tutti presenti), il dispositivo viene considerato per avere un tastierino direzionale. La funzionalità del tastierino direzionale è segnalata nella risorsa Configuration come NAVIGATION_DPAD.

  • Se il dispositivo di input ha tasti mappati a KEYCODE_BUTTON_A o altre chiavi correlate al gamepad, il dispositivo viene considerato avere un gamepad.

Requisiti dei driver della tastiera

  1. I driver della tastiera devono registrare solo i codici chiave che effettivamente supportati. La registrazione di codici chiave in eccesso potrebbe confondere il dispositivo algoritmo di classificazione o causare un rilevamento non corretto da parte del sistema le funzionalità di tastiera supportate dal dispositivo.

  2. I driver della tastiera devono utilizzare EV_KEY per segnalare le pressioni dei tasti, utilizzando un valore 0 per indicare che una chiave è stata rilasciata, il valore 1 per indicare che è stato premuto un tasto e un valore maggiore o uguale a 2 per indicare che la chiave viene ripetuta automaticamente.

  3. Android esegue la propria ripetizione della tastiera. Funzionalità di ripetizione automatica deve essere disattivato nel conducente.

  4. I driver della tastiera possono facoltativamente indicare l'utilizzo dell'HID o la scansione di basso livello inviando EV_MSC con MSC_SCANCODE e un valore che indica l'utilizzo o scansiona il codice quando premi il tasto. Al momento queste informazioni non sono usata da Android.

  5. I driver della tastiera dovrebbero supportare l'impostazione degli stati LED durante la scrittura EV_LED al dispositivo. Il driver di hid-input gestisce l'operazione automaticamente. Al momento della stesura del presente documento, Android utilizza LED_CAPSLOCK, LED_SCROLLLOCK, e LED_NUMLOCK. Questi LED devono essere supportati solo quando alla tastiera sono associate le spie luminose.

  6. Driver per tastiere incorporate (ad esempio, utilizzando una matrice GPIO) assicurati di inviare eventi EV_KEY con valore 0 per tutte le chiavi vengono comunque premuti quando il dispositivo entra in modalità di sospensione. In caso contrario, le chiavi potrebbero si blocca e si ripeterà automaticamente all'infinito.

Funzionamento da tastiera

Di seguito è riportato un breve riepilogo del funzionamento della tastiera su Android.

  1. EventHub legge gli eventi non elaborati dal driver evdev e mappa i codici chiave Linux (talvolta chiamati codici di scansione) nei codici chiave Android utilizzando la mappa di layout dei tasti della tastiera.

  2. InputReader consuma gli eventi non elaborati e aggiorna lo stato della meta chiave. Ad esempio, se premi o rilasci il tasto Maiusc sinistro, il lettore imposta o reimposta i bit META_SHIFT_LEFT_ON e META_SHIFT_ON di conseguenza.

  3. InputReader invia una notifica a InputDispatcher dell'evento chiave.

  4. Lo InputDispatcher chiede al WindowManagerPolicy cosa fare con la chiave richiamando WindowManagerPolicy.interceptKeyBeforeQueueing. Questo metodo fa parte di un percorso critico che prevede la riattivazione del dispositivo quando quando vengono premuti determinati tasti. Il EventHub blocca in modo efficace un wakelock lungo questo percorso critico per garantirne il completamento.

  5. Se un InputFilter è attualmente in uso, InputDispatcher gli fornisce un di utilizzare o trasformare la chiave. InputFilter può essere utilizzato per implementare politiche di accessibilità a livello di sistema di basso livello.

  6. InputDispatcher accoda la chiave per l'elaborazione nel thread di invio.

  7. Quando InputDispatcher rimuove la chiave in coda, restituisce WindowManagerPolicy una seconda possibilità di intercettare l'evento chiave chiamando WindowManagerPolicy.interceptKeyBeforeDispatching. Questo metodo gestisce il sistema scorciatoie e altre funzioni.

  8. InputDispatcher identifica quindi il target dell'evento chiave (la finestra con lo stato attivo). e attende che siano pronti. Dopodiché, l'InputDispatcher consegna all'applicazione.

  9. All'interno dell'applicazione, l'evento chiave si propaga verso il basso nella gerarchia di visualizzazione la vista evidenziata per l'invio delle chiavi pre-IME.

  10. Se l'evento chiave non è gestito nell'invio pre-IME ed è in uso un IME, verrà usato il parametro viene inviato all'IME.

  11. Se l'evento chiave non è stato utilizzato dall'IME, l'evento chiave si propaga. in basso nella gerarchia di visualizzazione fino alla vista con lo stato attivo per l'invio dei tasti standard.

  12. L'applicazione segnala al InputDispatcher se la chiave è stato consumato. Se l'evento non è stato consumato, InputDispatcher chiama WindowManagerPolicy.dispatchUnhandledKey per applicare il "riserva" comportamento degli utenti. A seconda dell'azione di fallback, il ciclo di invio degli eventi chiave può essere riavviato con un altro codice chiave. Ad esempio, se un'applicazione non gestisce KEYCODE_ESCAPE, il sistema potrebbe invece inviare di nuovo l'evento chiave come KEYCODE_BACK.

Configurazione della tastiera

Il comportamento della tastiera è determinato dal layout e dal carattere dei tasti configurazione della mappatura e del dispositivo di input.

Per ulteriori dettagli sui file che contribuiscono alla configurazione della tastiera:

Proprietà

Per le tastiere vengono utilizzate le seguenti proprietà di configurazione dei dispositivi di input.

layout.tastiera

Definizione: keyboard.layout = <nome>

Specifica il nome del file di layout della chiave associato al dispositivo di input. senza l'estensione .kl. Se questo file non viene trovato, il sistema di input utilizzerà il layout dei tasti predefinito.

Gli spazi nel nome vengono convertiti in trattini bassi durante la ricerca.

Per ulteriori dettagli, consulta la documentazione del file di layout delle chiavi.

tastiera.characterMap

Definizione: keyboard.characterMap = <nome>

Specifica il nome del file della mappa dei caratteri chiave associato al dispositivo di input. senza l'estensione .kcm. Se questo file non viene trovato, il sistema di input utilizzerà la mappa di caratteri chiave predefinita.

Gli spazi nel nome vengono convertiti in trattini bassi durante la ricerca.

Per ulteriori dettagli, consulta la documentazione del file di mappe dei caratteri chiave.

tastiera.orientationAware

Definizione: keyboard.orientationAware = 0 | 1

Consente di specificare se la tastiera deve reagire ai cambiamenti di orientamento del display.

  • Se il valore è 1, i tasti direzionali del tastierino vengono ruotati quando modifiche all'orientamento del display associate.

  • Se il valore è 0, la tastiera non è immune dai cambiamenti di orientamento del display.

Il valore predefinito è 0.

La consapevolezza dell'orientamento viene utilizzata per supportare la rotazione dei tasti direzionali del tastierino, come sul Motorola Droid. Ad esempio, quando il dispositivo viene ruotato di 90 gradi in senso orario rispetto all'orientamento naturale, KEYCODE_DPAD_UP è rimappato per produrre KEYCODE_DPAD_RIGHT dal "up" finisce per puntare "destra" quando il dispositivo è tenuto in quell'orientamento.

tastiera.integrata

Definizione: keyboard.builtIn = 0 | 1

Specifica se la tastiera è integrata (collegata fisicamente) tastiera.

Il valore predefinito è 1 se il nome del dispositivo termina con -keypad, altrimenti 0.

Alla tastiera integrata viene sempre assegnato un ID dispositivo pari a 0. Altre tastiere non integrati vengono assegnati ID dispositivo univoci diversi da zero.

L'utilizzo dell'ID 0 per la tastiera integrata è importante per mantenere con il campo KeyCharacterMap.BUILT_IN_KEYBOARD, che specifica l'ID della tastiera integrata e ha un valore di 0. Questo campo è stato è deprecata nell'API, ma è possibile che venga ancora utilizzata da applicazioni precedenti.

Una tastiera con funzioni speciali (la cui mappa di caratteri dei tasti specifica tipo di SPECIAL_FUNCTION) non verranno mai registrati come tastiera integrata, a prescindere dall'impostazione di questa proprietà. Questo perché una funzione speciale Per definizione, la tastiera non è destinata a essere utilizzata per la digitazione generica.

Configurazioni di esempio

# 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

Note sulla compatibilità

Prima di Honeycomb, il mapping dell'immissione da tastiera non utilizzava alcuna proprietà di configurazione. Si è presupposto che tutte le tastiere fossero fisicamente collegate e che fossero orientate in modo consapevole. Il valore predefinito il layout dei tasti e la mappa dei caratteri dei tasti sono stati denominati qwerty anziché Generic. La chiave anche il formato della mappa dei caratteri era molto diverso e il framework non supportava Tastiere complete in stile PC o tastiere esterne.

Quando esegui l'upgrade dei dispositivi a Honeycomb, assicurati di creare o aggiornare di configurazione e dei file delle mappe principali.

Utilizzi HID, codici chiave Linux e codici chiave Android

Il sistema fa riferimento alle chiavi utilizzando diversi identificatori, a seconda del un livello di astrazione.

Per i dispositivi HID, a ogni chiave è associato un utilizzo dell'HID. L'app Linux hid-input e i driver HID specifici del dispositivo e del relativo fornitore per l'analisi dei report HID e la mappatura degli utilizzi HID ai codici chiave Linux.

Quando Android legge gli eventi EV_KEY dal kernel Linux, traduce ogni il codice chiave Linux nel codice chiave Android corrispondente in base alle il file di layout dei tasti del dispositivo.

Quando l'evento chiave viene inviato a un'applicazione, android.view.KeyEvent istanza segnala il codice chiave Linux come il valore di getScanCode() e Codice chiave Android come valore di getKeyCode(). Ai fini dei solo il valore di getKeyCode() è importante.

Tieni presente che le informazioni sull'utilizzo dell'HID non vengono utilizzate da Android stesso o passate alle applicazioni.

Tabelle di codice

Le seguenti tabelle mostrano come gli utilizzi dell'HID, i codici chiave Linux e i sistemi Android sono correlati tra loro.

La colonna LKC specifica il codice della chiave Linux in formato esadecimale.

La colonna AKC specifica il codice della chiave Android in formato esadecimale.

La colonna Note si riferisce alle note pubblicate dopo la tabella.

La colonna Versione specifica la prima versione della piattaforma Android includere questa chiave nella mappa delle chiavi predefinita. Sono presenti più righe mostrata nei casi in cui la mappa delle chiavi predefinita è cambiata da una versione a un'altra. La versione meno recente indicata è la 1.6.

  • In Gingerbread (2.3) e versioni precedenti, la mappa delle chiavi predefinita era qwerty.kl. Questa mappa chiave era destinata solo all'uso con Android Emulatore e non è stato pensato per supportare modelli tastiere esterne. Tuttavia, alcuni OEM hanno aggiunto il Bluetooth il supporto della tastiera per la piattaforma e abbiamo fatto affidamento su qwerty.kl per fornire le mappature di tastiera necessarie. Di conseguenza le mappature meno recenti potrebbero interessare gli OEM che stanno creando periferiche per questi particolari dispositivi. Tieni presente che le mappature sono sostanzialmente diverse da quelle attuali, in particolare in merito al trattamento della chiave HOME. Consigliato che tutte le nuove periferiche siano sviluppate secondo lo standard mappe chiavi recenti (ad es. HID standard).

  • A partire da Honeycomb (3.0), la mappa delle chiavi predefinita è Generic.kl. Questa mappa dei tasti è stata progettata per supportare tastiere in stile PC. La maggior parte delle funzionalità delle tastiere HID standard dovrebbe funzionare all'interno della confezione.

La mappatura del codice delle chiavi può variare tra le versioni del kernel Linux e di Android. Quando è noto che sono state apportate modifiche alle mappe delle chiavi predefinite di Android, sono indicate nella colonna della versione.

I driver HID specifici del dispositivo e le mappe dei tasti potrebbero applicare mappature diverse rispetto a quelli indicati qui.

Pagina tastiera e tastierino HID (0x07)

Utilizzo HID Nome utilizzo HID LKC Nome codice chiave Linux Versione AKC Nome codice chiave Android Note
0x07 0x0001 Rollover errore tastiera
0x07 0x0002 POST non riuscito per la tastiera
0x07 0x0003 Errore della tastiera non definito
0x07 0x0004 Tastiera A e A 0x001e LEGENDA_A 1,6 0 x 001 g CODICE_A 1
0x07 0x0005 Tastiera B e B 0x0030 KEY_B 1,6 0x001e KEYCODE_B 1
0x07 0x0006 Tastiera C e C 0x002e KEY_C 1,6 0x001f KEYCODE_C 1
0x07 0x0007 Tastiera D e D 0x0020 KEY_D 1,6 0x0020 KEYCODE_D 1
0x07 0x0008 Tastiera E ed E 0x0012 KEY_E 1,6 0x0021 KEYCODE_E 1
0x07 0x0009 Tastiera F e F 0x0021 LEGENDA_F 1,6 0x0022 KEYCODE_F 1
0x07 0x000a Tastiera G e G 0x0022 LEGENDA_G 1,6 0x0023 KEYCODE_G 1
0x07 0x000b Tastiera H e H 0x0023 LEGENDA_H 1,6 0x0024 CODICE_CHIAVE 1
0x07 0x000c Tastiera I e I 0x0017 CHIAVE_I 1,6 0x0025 KEYCODE_I 1
0x07 0x000d Tastiera J e J 0x0024 CHIAVE_J 1,6 0x0026 CODICE_CHIAVE 1
0x07 0x000e Tastiera K e K 0x0025 KEY_K 1,6 0x0027 KEYCODE_K 1
0x07 0x000f Tastiera L e L 0x0026 LEGENDA_L 1,6 0x0028 KEYCODE_L 1
0x07 0x0010 Tastiera M e M 0x0032 CHIAVE_M 1,6 0x0029 KEYCODE_M 1
0x07 0x0011 Tastiera n e N 0x0031 CHIAVE_N 1,6 0x002a CODICE_N 1
0x07 0x0012 Tastiera O e O 0x0018 KEY_O 1,6 0x002b CODICE_CHIAVE 1
0x07 0x0013 Tastiera P e P 0x0019 KEY_P 1,6 0x002c CODICE_CHIAVE 1
0x07 0x0014 Tastiera Q e Q 0x0010 KEY_Q 1,6 0x002d CODICE_Q 1
0x07 0x0015 Tastiera R e R 0x0013 CHIAVE_R 1,6 0x002e CODICE_R 1
0x07 0x0016 Tastiera S e S 0x001f CHIAVE_S 1,6 0x002f CODICE_CHIAVE 1
0x07 0x0017 Tastiera T e T 0x0014 KEY_T 1,6 0x0030 CODICE_T 1
0x07 0x0018 Tastiera U e U 0x0016 KEY_U 1,6 0x0031 CODICE_U 1
0x07 0x0019 Tastiera V e V 0x002f CHIAVE_V 1,6 0x0032 CODICE_CHIAVE 1
0x07 0x001a Tastiera W e W 0x0011 CHIAVE_W 1,6 0x0033 CODICE_W 1
0x07 0x001b Tastiera x e X 0x002d LEGENDA_X 1,6 0x0034 CODICE_X 1
0x07 0x001c Tastiera Y e Y 0x0015 CHIAVE_Y 1,6 0x0035 CODICE_CHIAVE 1
0x07 0x001d Tastiera Z e Z 0x002c CHIAVE_Z 1,6 0x0036 CODICE CHIAVE_Z 1
0x07 0x001e Tastiera 1 e ! 0x0002 CHIAVE_1 1,6 0x0008 CODICE CHIAVE_1 1
0x07 0x001f Tastiera 2 e @ 0x0003 CHIAVE_2 1,6 0x0009 CODICE CHIAVE_2 1
0x07 0x0020 Tastiera 3 e n. 0x0004 CHIAVE_3 1,6 0x000a CODICE CHIAVE_3 1
0x07 0x0021 Tastiera 4 e $ 0x0005 CHIAVE_4 1,6 0x000b CODICE CHIAVE_4 1
0x07 0x0022 Tastiera 5 e % 0x0006 CHIAVE_5 1,6 0x000c CODICE CHIAVE_5 1
0x07 0x0023 Tastiera 6 e ^ 0x0007 LEGENDA_6 1,6 0 x 000 g CODICE CHIAVE_6 1
0x07 0x0024 Tastiera 7 e & 0x0008 CHIAVE_7 1,6 0x000e CODICE CHIAVE_7 1
0x07 0x0025 Tastiera 8 e * 0x0009 CHIAVE_8 1,6 0x000f CODICE CHIAVE_8 1
0x07 0x0026 Tastiera 9 e ( 0x000a CHIAVE_9 1,6 0x0010 CODICE CHIAVE_9 1
0x07 0x0027 Tastiera 0 e ) 0x000b CHIAVE_0 1,6 0x0007 CODICE CHIAVE_0 1
0x07 0x0028 Ritorno della tastiera (INVIO) 0x001c KEY_INVIO 1,6 0x0042 KEYCODE_INVIO 1
0x07 0x0029 ESCAPE Tastiera 0x0001 KEY_ESC 3,0 0 x 006F KEYCODE_ESCAPE
"" "" "" "" 2.3 0x0004 CODICE_CHIAVE
0x07 0x002a Tastiera DELETE (Backspace) 0x000e KEY_BACKSPACE 1,6 0x0043 KEYCODE_DEL
0x07 0x002b Scheda Tastiera 0x000f SCHEDA_CHIAVE 1,6 0x003d SCHEDA_CODICE_CHIAVE
0x07 0x002c Barra spaziatrice della tastiera 0x0039 SPAZIO_CHIAVE 1,6 0x003e KEYCODE_SPACE
0x07 0x002d Tastiera - e _ 0x000c KEY_MINUS 1,6 0x0045 CODICE CHIAVE_MINUS 1
0x07 0x002e Tastiera = e + 0 x 000 g KEY_EQUAL 1,6 0x0046 KEYCODE_EQUALS 1
0x07 0x002f Tastiera [ e { 0x001a KEY_LEFTBRACE 1,6 0x0047 KEYCODE_LEFT_BRACKET 1
0x07 0x0030 Tastiera ] e } 0x001b CHIAVE_DESTRA. 1,6 0x0048 KEYCODE_RIGHT_BRACKET 1
0x07 0x0031 Tastiera \ e | 0x002b KEY_BACKSLASH 1,6 0x0049 KEYCODE_BACKSLASH 1
0x07 0x0032 Tastiera n. non USA e ~ 0x002b KEY_BACKSLASH 1,6 0x0049 KEYCODE_BACKSLASH 1
0x07 0x0033 Tastiera ; e : 0x0027 KEY_SEMICOLON 1,6 0x004a KEYCODE_SEMICOLON 1
0x07 0x0034 Tastiera ' e " 0x0028 KEY_APOSTROPHE 1,6 0x004b KEYCODE_APOSTROPHE 1
0x07 0x0035 Tastiera " e ~ 0x0029 KEY_GRAVE 3,0 0x0044 CODICE_CHIAVE_GRAVE 1
0x07 0x0036 Tastiera e < 0x0033 KEY_COMMA 1,6 0x0037 KEYCODE_COMMA 1
0x07 0x0037 Tastiera . e > 0x0034 PUNTO_CHIAVE 1,6 0x0038 KEYCODE_PERIOD 1
0x07 0x0038 Tastiera / e ? 0x0035 KEY_SLASH 1,6 0x004c KEYCODE_SLASH 1
0x07 0x0039 Bloc maiusc tastiera 0x003a BLOCCO MAIUSCOLO 3,0 0x0073 KEYCODE_MAIUSC_BLOCCO
0x07 0x003a Tastiera F1 0x003b KEY_F1 3,0 0x0083 CODICE CHIAVE_F1
"" "" "" "" 1,6 0x0052 MENU KEYCODE
0x07 0x003b Tastiera F2 0x003c KEY_F2 3,0 0x0084 CODICE CHIAVE_F2
"" "" "" "" 1,6 0x0002 KEYCODE_SOFT_RIGHT
0x07 0x003c Tastiera F3 0x003d KEY_F3 3,0 0x0085 CODICE CHIAVE_F3
"" "" "" "" 1,6 0x0005 KEYCODE_CALL
0x07 0x003d Tastiera F4 0x003e KEY_F4 3,0 0x0086 CODICE CHIAVE_F4
"" "" "" "" 1,6 0x0006 KEYCODE_ENDCHIAMATA
0x07 0x003e Tastiera F5 0 x 003F KEY_F5 3,0 0x0087 CODICE CHIAVE_F5
0x07 0x003f Tastiera F6 0x0040 KEY_F6 3,0 0x0088 CODICE CHIAVE_F6
0x07 0x0040 Tastiera F7 0x0041 KEY_F7 3,0 0x0089 CODICE CHIAVE_F7
0x07 0x0041 Tastiera F8 0x0042 CHIAVE_F8 3,0 0x008a CODICE CHIAVE_F8
0x07 0x0042 Tastiera F9 0x0043 CHIAVE_F9 3,0 0x008b CODICE CHIAVE_F9
0x07 0x0043 Tastiera F10 0x0044 KEY_F10 3,0 0x008c CODICE CHIAVE_F10
"" "" "" "" 2.3 0x0052 MENU KEYCODE
0x07 0x0044 Tastiera F11 0x0057 KEY_F11 3,0 0 x 008 g CODICE CHIAVE_F11
0x07 0x0045 Tastiera F12 0x0058 KEY_F12 3,0 0x008e CODICE CHIAVE_F12
0x07 0x0046 Schermata di stampa della tastiera 0x0063 KEY_SYSRQ 3,0 0x0078 KEYCODE_SYSRQ
0x07 0x0047 Bloc scorr della tastiera 0x0046 BLOCCO_CHIAVE 3,0 0x0074 BLOCCO_CODICE_CHIAVE
0x07 0x0048 Pausa della tastiera 0x0077 PAUSA_CHIAVE 3,0 0x0079 KEYCODE_BREAK
0x07 0x0049 Inserto della tastiera 0x006e INSERIMENTO CHIAVE 3,0 0x007c KEYCODE_INSERT
0x07 0x004a Home Tastiera 0x0066 CHIAVE_HOME 3,0 0x007a KEYCODE_MOVE_HOME
"" "" "" "" 1,6 0x0003 KEYCODE_HOME
0x07 0x004b Pagina su tastiera 0x0068 KEY_PAGEUP 3,0 0x005c KEYCODE_PAGE_UP
0x07 0x004c Elimina in avanti della tastiera 0 x 006F ELIMINA_CHIAVE 3,0 0x0070 KEYCODE_FORWARD_DEL
0x07 0x004d Fine tastiera 0x006b KEY_END 3,0 0x007b KEYCODE_MOVE_END
"" "" "" "" 1,6 0x0006 KEYCODE_ENDCHIAMATA
0x07 0x004e Pagina giù della tastiera 0x006d KEY_PAGEDOWN 3,0 0 x 005 g KEYCODE_PAGE_DOWN
0x07 0x004f Freccia destra della tastiera 0x006a CHIAVE_DESTRA 1,6 0x0016 KEYCODE_DPAD_DESTRA
0x07 0x0050 Freccia sinistra della tastiera 0x0069 KEY_LEFT 1,6 0x0015 KEYCODE_DPAD_LEFT
0x07 0x0051 Freccia giù della tastiera 0x006c KEY_DOWN 1,6 0x0014 KEYCODE_DPAD_DOWN
0x07 0x0052 Freccia su tastiera 0x0067 KEY_UP 1,6 0x0013 KEYCODE_DPAD_UP
0x07 0x0053 Bloc num e Cancella tastiera 0x0045 KEY_NUMLOCK 3,0 0x008f KEYCODE_NUM_LOCK
0x07 0x0054 Tastierino / 0x0062 KEY_KPSLASH 3,0 0x009a KEYCODE_NUMPAD_DIVIDE
0x07 0x0055 Tastierino * 0x0037 KEY_KPASTERISK 3,0 0x009b KEYCODE_NUMPAD_MULTIPLY
0x07 0x0056 Tastierino - 0x004a KEY_KPMINUS 3,0 0x009c KEYCODE_NUMPAD_SUBTRACT
0x07 0x0057 Tastierino + 0x004e KEY_KPPLUS 3,0 0 x 009 g KEYCODE_NUMPAD_AGGIUNGI
0x07 0x0058 Tastierino INVIO 0x0060 KEY_KPENTER 3,0 0x00a0 KEYCODE_NUMPAD_INVIO
0x07 0x0059 Tastierino 1 e Fine 0x004f KEY_KP1 3,0 0x0091 KEYCODE_NUMPAD_1
0x07 0x005a Tastierino 2 e Freccia giù 0x0050 CHIAVE_KP2 3,0 0x0092 KEYCODE_NUMPAD_2
0x07 0x005b Tastierino 3 e PageDn 0x0051 CHIAVE_KP3 3,0 0x0093 KEYCODE_NUMPAD_3
0x07 0x005c Tastierino 4 e Freccia sinistra 0x004b CHIAVE_KP4 3,0 0x0094 KEYCODE_NUMPAD_4
0x07 0x005d Tastierino 5 0x004c CHIAVE_KP5 3,0 0x0095 KEYCODE_NUMPAD_5
0x07 0x005e Tastierino 6 e Freccia destra 0x004d CHIAVE_KP6 3,0 0x0096 KEYCODE_NUMPAD_6
0x07 0x005f Tastierino 7 e Home 0x0047 CHIAVE_KP7 3,0 0x0097 KEYCODE_NUMPAD_7
0x07 0x0060 Tastierino 8 e Freccia su 0x0048 CHIAVE_KP8 3,0 0x0098 KEYCODE_NUMPAD_8
0x07 0x0061 Tastierino 9 e Pagina su 0x0049 CHIAVE_KP9 3,0 0x0099 KEYCODE_NUMPAD_9
0x07 0x0062 Tastierino 0 e Inserisci 0x0052 KEY_KP0 3,0 0x0090 KEYCODE_NUMPAD_0
0x07 0x0063 Tastierino . ed Elimina 0x0053 KEY_KPDOT 3,0 0x009e KEYCODE_NUMPAD_DOT
0x07 0x0064 Tastiera non USA \ e | 0x0056 KEY_102ND 4.0 0x0049 KEYCODE_BACKSLASH 1
0x07 0x0065 Applicazione Tastiera 0x007f CHIAVE_SCRITTURA 3,0 0x0052 MENU KEYCODE
"" "" "" "" 1,6 0x0054 RICERCA CODICE CHIAVE
0x07 0x0066 Alimentazione della tastiera 0x0074 POTENZA CHIAVE 1,6 0x001a KEYCODE_POWER
0x07 0x0067 Tastierino = 0x0075 KEY_KPEQUAL 3,0 0x00a1 KEYCODE_NUMPAD_EQUALS
0x07 0x0068 Tastiera F13 0x00b7 KEY_F13
0x07 0x0069 Tastiera F14 0x00b8 KEY_F14
0x07 0x006a Tastiera F15 0x00b9 KEY_F15
0x07 0x006b Tastiera F16 0 x 00 BA KEY_F16
0x07 0x006c Tastiera F17 0x00bb KEY_F17
0x07 0x006d Tastiera F18 0x00bc KEY_F18
0x07 0x006e Tastiera F19 0x00bd KEY_F19
0x07 0x006f Tastiera F20 0x00be KEY_F20
0x07 0x0070 Tastiera F21 0x00bf KEY_F21
0x07 0x0071 Tastiera F22 0x00c0 KEY_F22
0x07 0x0072 Tastiera F23 0x00c1 KEY_F23
0x07 0x0073 Tastiera F24 0x00c2 KEY_F24
0x07 0x0074 Esecuzione tastiera 0x0086 KEY_OPEN
0x07 0x0075 Guida della tastiera 0x008a KEY_HELP
0x07 0x0076 Menu della tastiera 0x0082 KEY_PROPS
0x07 0x0077 Selezione tastiera 0x0084 FRONTE_CHIAVE
0x07 0x0078 Arresto della tastiera 0x0080 KEY_STOP 3,0 0x0056 KEYCODE_MEDIA_STOP
0x07 0x0079 Tastiera di nuovo 0x0081 CHIAVE_ANCORA
0x07 0x007a Annulla tastiera 0x0083 KEY_UNDO
0x07 0x007b Taglio tastiera 0x0089 CHIAVE_CUT
0x07 0x007c Testo tastiera 0x0085 KEY_COPY
0x07 0x007d Incollamento tastiera 0x0087 INCOLLA_CHIAVE
0x07 0x007e Ricerca tramite tastiera 0x0088 TROVA_CHIAVE
0x07 0x007f Disattiva audio tastiera 0x0071 DISATTIVA AUDIO_CHIAVE 3,0 0x00a4 KEYCODE_VOLUME_MUTE
0x07 0x0080 Alza il volume della tastiera 0x0073 VOLUME_CHIAVE 1,6 0x0018 KEYCODE_VOLUME_UP
0x07 0x0081 Abbassa il volume della tastiera 0x0072 CHIAVE_VOLUMEGIÙ 1,6 0x0019 KEYCODE_VOLUME_GIÙ
0x07 0x0082 Bloc maiusc blocco tastiera
0x07 0x0083 Bloc num blocco tastiera
0x07 0x0084 Blocco scorrimento tastiera
0x07 0x0085 Virgola del tastierino 0x0079 KEY_KPCOMMA 3,0 0x009f KEYCODE_NUMPAD_COMMA
0x07 0x0086 Segno uguale del tastierino
0x07 0x0087 Tastiera internazionale1 0x0059 KEY_RO
0x07 0x0088 Tastiera internazionale2 0 x 005 g KEY_KATAKANAHIRAGANA
0x07 0x0089 Tastiera internazionale3 0x007c KEY_YEN
0x07 0x008a Tastiera internazionale4 0x005c CHIAVE_HENKAN
0x07 0x008b Tastiera internazionale5 0x005e KEY_MUHENKAN
0x07 0x008c Tastiera internazionale6 0x005f KEY_KPJPCOMMA
0x07 0x008d Tastiera internazionale7
0x07 0x008e Tastiera internazionale8
0x07 0x008f Tastiera internazionale9
0x07 0x0090 Tastiera LING1 0x007a KEY_HANGEUL
0x07 0x0091 Tastiera lang2 0x007b KEY_HANJA
0x07 0x0092 Tastiera LING3 0x005a CHIAVE_KATAKANA
0x07 0x0093 Tastiera LING4 0x005b CHIAVE_HIRAGANA
0x07 0x0094 Tastiera LING5 0x0055 KEY_ZENKAKUHANKAKU
0x07 0x0095 Tastiera LING6
0x07 0x0096 Tastiera LING7
0x07 0x0097 Tastiera LING8
0x07 0x0098 Tastiera LING9
0x07 0x0099 Cancellazione alternativa dalla tastiera
0x07 0x009a Tastiera SysReq/Attention
0x07 0x009b Annullamento tastiera
0x07 0x009c Cancella tastiera
0x07 0x009d Tastiera Precedente
0x07 0x009e Restituzione tastiera
0x07 0x009f Separatore tastiera
0x07 0x00a0 Tastiera fuori
0x07 0x00a1 Funzionamento da tastiera
0x07 0x00a2 Tastiera chiara/nuovamente
0x07 0x00a3 CrSel/Props per tastiera
0x07 0x00a4 Tastiera ExSel
0x07 0x00b0 Tastierino 00
0x07 0x00b1 Tastierino 000
0x07 0x00b2 Separatore delle migliaia
0x07 0x00b3 Separatore decimale
0x07 0x00b4 Unità di valuta
0x07 0x00b5 Sottounità Valuta
0x07 0x00b6 Tastierino ( 0x00b3 KEY_KPLEFTPAREN 3,0 0x00a2 KEYCODE_NUMPAD_LEFT_PAREN
0x07 0x00b7 tastierino ) 0x00b4 KEY_KPRIGHTPAREN 3,0 0x00a3 KEYCODE_NUMPAD_RIGHT_PAREN
0x07 0x00b8 Tastierino {
0x07 0x00b9 Tastierino }
0x07 0x00ba Tabulazione tastierino
0x07 0x00bb Backspace del tastierino
0x07 0x00bc Tastierino A
0x07 0x00bd Tastierino B
0x07 0x00be Tastierino C
0x07 0x00bf Tastierino D
0x07 0x00c0 Tastierino E
0x07 0x00c1 Tastierino F
0x07 0x00c2 Tastierino XOR
0x07 0x00c3 Tastierino ^
0x07 0x00c4 % tastierino
0x07 0x00c5 Tastierino <
0x07 0x00c6 Tastierino >
0x07 0x00c7 Tastierino e
0x07 0x00c8 Tastierino &&
0x07 0x00c9 Tastierino |
0x07 0x00ca Tastierino ||
0x07 0x00cb Tastierino :
0x07 0x00cc Tastierino n.
0x07 0x00cd Spazio tastierino
0x07 0x00ce Tastierino @
0x07 0x00cf Tastierino!
0x07 0x00d0 Archivio memoria tastierino
0x07 0x00d1 Richiamo memoria tastierino
0x07 0x00d2 Cancellazione memoria tastierino
0x07 0x00d3 Aggiunta memoria tastierino
0x07 0x00d4 Sottrazione memoria tastierino
0x07 0x00d5 Moltiplicazione memoria tastierino
0x07 0x00d6 Divisione memoria tastierino
0x07 0x00d7 Tastierino +/-
0x07 0x00d8 Tastierino
0x07 0x00d9 Cancella immissione tastierino
0x07 0x00da Binario del tastierino
0x07 0x00db Tastierino ottale
0x07 0x00dc Decimale tastierino
0x07 0x00dd 0x07 Esadecimale del tastierino
0x07 0x00e0 Tasto sinistro della tastiera 0 x 001 g CTRL_CHIAVE_SINISTRA 3,0 0x0071 KEYCODE_CTRL_LEFT
0x07 0x00e1 Maiusc sinistro della tastiera 0x002a KEY_LEFTSHIFT 1,6 0x003b KEYCODE_SHIFT_LEFT
0x07 0x00e2 Alt sinistro della tastiera 0x0038 KEY_LEFTALT 1,6 0x0039 KEYCODE_ALT_LEFT
0x07 0x00e3 Interfaccia grafica sinistra della tastiera 0 x 007 g KEY_LEFTMETA 3,0 0x0075 KEYCODE_META_LEFT
0x07 0x00e4 Tasto destro della tastiera 0x0061 TASTO_CTRL_DESTRA 3,0 0x0072 KEYCODE_CTRL_DESTRA
0x07 0x00e5 Maiusc destro della tastiera 0x0036 KEY_RIGHTSHIFT 1,6 0x003c KEYCODE_MAIUSC_DESTRA
0x07 0x00e6 Alt destro tastiera 0x0064 ALTERNATIVA CHIAVE_DESTRA 1,6 0x003a KEYCODE_ALT_RIGHT
0x07 0x00e7 Interfaccia grafica destra della tastiera 0x007e KEY_RIGHTMETA 3,0 0x0076 CODICE_META_DESTRO
0x07 0x00e8 0x00a4 KEY_PLAYPAUSE 3,0 0x0055 KEYCODE_MEDIA_PLAY_PAUSA
0x07 0x00e9 0x00a6 KEY_STOPCD 3,0 0x0056 KEYCODE_MEDIA_STOP
0x07 0x00ea 0x00a5 CHIAVE_PREVIOUSSONG 3,0 0x0058 KEYCODE_MEDIA_PRECEDENTE
0x07 0x00eb 0x00a3 CANZONE_SUCCESSIVA 3,0 0x0057 KEYCODE_MEDIA_NEXT
0x07 0x00ec 0x00a1 KEY_EJECTCD 3,0 0x0081 KEYCODE_MEDIA_EJECT
0x07 0x00ed 0x0073 VOLUME_CHIAVE 1,6 0x0018 KEYCODE_VOLUME_UP
0x07 0x00ee 0x0072 CHIAVE_VOLUMEGIÙ 1,6 0x0019 KEYCODE_VOLUME_GIÙ
0x07 0x00ef 0x0071 DISATTIVA AUDIO_CHIAVE 3,0 0x00a4 KEYCODE_VOLUME_MUTE
0x07 0x00f0 0x0096 KEY_WWW 1,6 0x0040 KEYCODE_EXPLORER
0x07 0x00f1 0x009e KEY_BACK 1,6 0x0004 CODICE_CHIAVE
0x07 0x00f2 0x009f KEY_FORWARD 3,0 0 x 007 g CODICE_CHIAVE
0x07 0x00f3 0x0080 KEY_STOP 3,0 0x0056 KEYCODE_MEDIA_STOP
0x07 0x00f4 0x0088 TROVA_CHIAVE
0x07 0x00f5 0x00b1 SCORRIMENTO_CHIAVE 3,0 0x005c KEYCODE_PAGE_UP
0x07 0x00f6 0x00b2 SCORRIMENTO_CHIAVE 3,0 0 x 005 g KEYCODE_PAGE_DOWN
0x07 0x00f7 0x00b0 MODIFICA_CHIAVE
0x07 0x00f8 0x008e SONNO_CHIAVE
0x07 0x00f9 0x0098 CAFFE_CHIAVE 4.0 0x001a KEYCODE_POWER
0x07 0x00fa 0x00annuncio AGGIORNA_CHIAVE
0x00fb 0x008c CALC CHIAVE 4.0.3 0x00d2 CALCOLATORE_KEYCODE

Pagina desktop generica HID (0x01)

Utilizzo HID Nome utilizzo HID LKC Nome codice chiave Linux Versione AKC Nome codice chiave Android Note
0x01 0x0081 Spegnimento del sistema 0x0074 POTENZA CHIAVE 1,6 0x001a KEYCODE_POWER
0x01 0x0082 Sospensione del sistema 0x008e SONNO_CHIAVE 4.0 0x001a KEYCODE_POWER
0x01 0x0083 Attivazione sistema 0x008f KEY_WAKEUP 4.0 0x001a KEYCODE_POWER
0x01 0x0084 Menu contestuale del sistema
0x01 0x0085 Menu principale del sistema
0x01 0x0086 Menu app di sistema
0x01 0x0087 Guida del menu di sistema
0x01 0x0088 Uscita dal menu di sistema
0x01 0x0089 Selezione menu di sistema
0x01 0x008a Menu di sistema a destra
0x01 0x008b Menu di sistema a sinistra
0x01 0x008c Menu di sistema su
0x01 0x008d Menu di sistema giù
0x01 0x008e Riavvio a freddo del sistema
0x01 0x008f Riavvio a caldo del sistema
0x01 Dock di sistema
0x01 0x00a1 Sgancio del sistema
0x01 Configurazione del sistema
0x01 0x00a3 Interruzione di sistema
0x01 0x00a4 Interruzione debugger di sistema
0x01 0x00a5 Interruzione dell'applicazione
0x01 0x00a6 Interruzione debug applicazione
0x01 0x00a7 Disattiva audio altoparlante di sistema
0x01 0x00a8 Ibernazione sistema
0x01 0x00b0 Inversione display sistema
0x01 0x00b1 Display di sistema interno
0x01 0x00b2 Display di sistema esterno
0x01 0x00b3 Sistema Visualizza entrambi
0x01 0x00b4 Doppio display di sistema
0x01 0x00b5 Attivazione/disattivazione visualizzazione sistema
0x01 0x00b6 Prim./sec. cambio schermo sistema
0x01 0x00b7 Scalabilità automatica del display del sistema LCD

Pagina consumer HID (0x0c)

Utilizzo HID Nome utilizzo HID LKC Nome codice chiave Linux Versione AKC Nome codice chiave Android Note
0x0c 0x0030 Potenza
0x0c 0x0031 Resetta
0x0c 0x0032 Sonno
0x0c 0x0033 Sonno dopo
0x0c 0x0034 Modalità di sospensione 0x008e SONNO_CHIAVE 4.0 0x001a KEYCODE_POWER
0x0c 0x0040 Menu 0x008b MENU_CHIAVE 1,6 0x0052 MENU KEYCODE
0x0c 0x0041 Scelta menu
0x0c 0x0042 Menu su
0x0c 0x0043 Menu giù
0x0c 0x0044 Menu a sinistra
0x0c 0x0045 Menu a destra 0x0181 CHIAVE_DESTRA
0x0c 0x0046 Menu Esc
0x0c 0x0047 Aumento del valore del menu
0x0c 0x0048 Diminuzione del valore del menu
0x0c 0x0067 Pulsante di attivazione/disattivazione Picture in picture 0x00ab KEYCODE_WINDOW Aggiunto in aosp/1365553
0x0c 0x0069 Pulsante rosso del menu 0x18e CHIAVE_ROSSA 0x00b7 KEYCODE_PROG_RED Aggiunto in aosp/1388616
0x0c 0x006a Pulsante Menu verde 0x18f CHIAVE_VERDE 0x00b8 KEYCODE_PROG_VERDE Aggiunto in aosp/1388616
0x0c 0x006b Pulsante menu blu 0x191 BLU CHIAVE 0 x 00 BA KEYCODE_PROG_BLU Aggiunto in aosp/1388616
0x0c 0x006c Pulsante menu giallo 0x190 CHIAVE_GIALLO 0x00b9 KEYCODE_PROG_GIALLO Aggiunto in aosp/1388616
0x0c 0x0081 Assegna selezione
0x0c 0x0082 Passaggio modalità
0x0c 0x0083 Ultimo richiamo 0x0195 KEY_LAST 0 x 5 KEYCODE_LAST_CHANNEL Aggiunto in aosp/1365551
0x0c 0x0084 Entra nel canale
0x0c 0x0085 Ordina film
0x0c 0x0088 Computer con selezione dei contenuti multimediali 0x0178 KEY_PC
0x0c 0x0089 TV con selezione media 0x0179 KEY_TV 3,0 0x00aa KEYCODE_TV
0x0c 0x008a Media Select WWW 0x0096 KEY_WWW 1,6 0x0040 KEYCODE_EXPLORER
0x0c 0x008b DVD con selezione multimediale 0x0185 KEY_DVD
0x0c 0x008c Telefono Media Select 0x00a9 TELEFONO 3,0 0x0005 KEYCODE_CALL
0x0c 0x008d Guida ai programmi di selezione dei contenuti multimediali 0x016a PROGRAMMA_CHIAVE 3,0 0x00ac GUIDA DEL CODICE CHIAVE
0x0c 0x008e Videotelefono Media Select 0x01a0 KEY_VIDEOTELEFONO
0x0c 0x008f Giochi Media Select 0x01a1 GIOCHI_CHIAVE
0x0c 0x0090 Messaggi di selezione dei contenuti multimediali 0x018c MEMO_CHIAVE
0x0c 0x0091 CD Media Select 0x017f KEY_CD
0x0c 0x0092 VCR per la selezione dei contenuti multimediali 0x017b KEY_VCR
0x0c 0x0093 Sintonizzatore per selezione multimediale 0x0182 KEY_TUNER
0x0c 0x0094 Esci 0x00ae CHIAVE_ESCI
0x0c 0x0095 Guida 0x008a KEY_HELP
0x0c 0x0096 Nastro per la selezione dei contenuti multimediali 0x0180 KEY_TAPE
0x0c 0x0097 Cavo Media Select 0x017a KEY_TV2
0x0c 0x0098 Satellitare Media Select 0 x 017 g KEY_SAT
0x0c 0x0099 Sicurezza Selezione media
0x0c 0x009a Media Select Home 0x016e KEY_PVR 3,0 0x00annuncio KEYCODE_DVR
0x0c 0x0061 Con sottotitoli 0x0172 KEY_SUBTITLE 0x00af KEYCODE_CAPTIONS Aggiunto in aosp/1365552
0x0c 0x009c Incremento del canale 0x0192 KEY_CHANNELUP 3,0 0x00a6 KEYCODE_CHANNEL_UP
0x0c 0x009d Riduzione del canale 0x0193 KEY_CHANNELDOWN 3,0 0x00a7 KEYCODE_CHANNEL_DOWN
0x0c 0x009e SAP Selezione media
0x0c 0x00a0 VCR Plus 0x017c CHIAVE_VCR2
0x0c 0x00a1 Una volta
0x0c 0x00a2 Ogni giorno
0x0c 0x00a3 Settimanale
0x0c 0x00a4 Mensile
0x0c 0x00b0 Riproduci 0x00cf KEY_PLAY 3,0 0x007e KEYCODE_MEDIA_PLAY
0x0c 0x00b1 Metti in pausa 0x0077 PAUSA_CHIAVE 3,0 0x0079 KEYCODE_BREAK
0x0c 0x00b2 Registra 0x00a7 KEY_RECORD 3,0 0x0082 KEYCODE_MEDIA_RECORD
0x0c 0x00b3 Avanti veloce 0x00d0 KEY_FASTFORWARD 3,0 0x005a KEYCODE_MEDIA_FAST_FORWARD
0x0c 0x00b4 Riavvolgi 0x00a8 KEY_REwind 3,0 0x0059 KEYCODE_MEDIA_REwind
0x0c 0x00b5 Cerca traccia successiva 0x00a3 CANZONE_SUCCESSIVA 3,0 0x0057 KEYCODE_MEDIA_NEXT
0x0c 0x00b6 Cerca traccia precedente 0x00a5 CHIAVE_PREVIOUSSONG 3,0 0x0058 KEYCODE_MEDIA_PRECEDENTE
0x0c 0x00b7 Interrompi 0x00a6 KEY_STOPCD 3,0 0x0056 KEYCODE_MEDIA_STOP
0x0c 0x00b8 Espelli 0x00a1 KEY_EJECTCD 3,0 0x0081 KEYCODE_MEDIA_EJECT
0x0c 0x00b9 Riproduzione casuale
0x0c 0x00ba Seleziona disco
0x0c 0x00bb Inserisci disco
0x0c 0x00bc Ripeti 0x01b7 KEY_MEDIA_REPEAT
0x0c 0x00be Traccia normale
0x0c 0x00c0 Inquadra in avanti
0x0c 0x00c1 Parte posteriore
0x0c 0x00c2 Segna
0x0c 0x00c3 Cancella segno
0x0c 0x00c4 Ripeti dal segno
0x0c 0x00c5 Ritorna a segnare
0x0c 0x00c6 Segnale di ricerca avanti
0x0c 0x00c7 Segno di ricerca indietro
0x0c 0x00c8 Reimpostazione contatore
0x0c 0x00c9 Mostra contatore
0x0c 0x00ca Incremento del monitoraggio
0x0c 0x00cb Riduzione del monitoraggio
0x0c 0x00cc Interrompi / espulsione
0x0c 0x00cd Riproduci/Pausa 0x00a4 KEY_PLAYPAUSE 3,0 0x0055 KEYCODE_MEDIA_PLAY_PAUSA
0x0c 0x00ce Riproduci / Salta
0x0c 0x00e2 Disattiva audio 0x0071 DISATTIVA AUDIO_CHIAVE 3,0 0x00a4 KEYCODE_VOLUME_MUTE
0x0c 0x00e5 Bassi più intensi 0x00d1 KEY_BASSBOOST
0x0c 0x00e6 Modalità surround
0x0c 0x00e7 Volume
0x0c 0x00e8 MPX
0x0c 0x00e9 Incremento volume 0x0073 VOLUME_CHIAVE 1,6 0x0018 KEYCODE_VOLUME_UP
0x0c 0x00ea Riduzione del volume 0x0072 CHIAVE_VOLUMEGIÙ 1,6 0x0019 KEYCODE_VOLUME_GIÙ
0x0c 0x0173 Incremento audio alternativo 0x00de KEYCODE_MEDIA_AUDIO_TRACK Aggiunto in aosp/1365554
0x0c 0x0181 Configurazione pulsante di avvio AL. Strumento
0x0c 0x0182 Configurazione pulsanti programmabili AL. 0x009c KEY_BOOKMARK 3,0 0x00ae KEYCODE_BOOKMARK
0x0c 0x0183 AL Consumer Control Config. 0x00ab CONFIG_CHIAVE 4.0.3 0x00d1 KEYCODE_MUSIC
0x0c 0x0184 Elaboratore di testi AL 0x01a5 KEY_WORDPROCESSOR
0x0c 0x0185 Editor di testo AL 0x01a6 EDITOR_CHIAVE
0x0c 0x0186 Foglio di lavoro AL 0x01a7 KEY_SPREADsheets
0x0c 0x0187 Editor grafico AL 0x01a8 KEY_GRAPHICSEDITOR
0x0c 0x0188 App per presentazioni AL 0x01a9 PRESENTAZIONE_CHIAVE
0x0c 0x0189 App di database AL 0x01aa KEY_DATABASE
0x0c 0x018a Lettore email AL 0x009b POSTA_CHIAVE 1,6 0x0041 INTENSITÀ_CODICE_CHIAVE
0x0c 0x018b Lettore di notizie AL 0x01ab KEY_NEWS
0x0c 0x018c Segreteria AL 0x01ac E-MAIL KEY_VOIC
0x0c 0x018d Contatti AL / Rubrica 0 x 01 annuncio KEY_ADDRESSBOOK 4.0.3 0x00cf KEYCODE_CONTATTI
0x0c 0x018e Calendario / programmazione in AL 0 x 018 g KEY_CALENDAR 4.0.3 0x00d0 KEYCODE_CALENDAR
0x0c 0x018f Responsabile di progetto / attività AL
0x0c 0x0190 Log / diario / timecard AL
0x0c 0x0191 Libretto di controllo AL / Finanza 0x00db FINANZIARIO_CHIAVE
0x0c 0x0192 Calcolatrice AL 0x008c CALC CHIAVE 4.0.3 0x00d2 CALCOLATORE_KEYCODE
0x0c 0x0193 Acquisizione/riproduzione A / V AL
0x0c 0x0194 Browser di macchine locali AL 0x0090 KEY_FILE
0x0c 0x0195 Browser AL LAN/WAN
0x0c 0x0196 Browser Internet AL 0x0096 KEY_WWW 1,6 0x0040 KEYCODE_EXPLORER
0x0c 0x0197 Networking remoto/ISP Connect AL
0x0c 0x0198 Conferenza della rete AL
0x0c 0x0199 Chat di rete AL 0x00d8 CHAT CHIAVE
0x0c 0x019a Telefonia / Dialer AL
0x0c 0x019b Accesso ad AL
0x0c 0x019c Disconnessione AL 0x01b1 KEY_LOGOFF
0x0c 0x019d Accesso / Disconnessione AL
0x0c 0x019e Salvaschermo / Blocco terminale in AL 0x0098 CAFFE_CHIAVE 4.0 0x001a KEYCODE_POWER
0x0c 0x019f Pannello di controllo AL
0x0c 0x01a0 Processore / esecuzione a riga di comando AL
0x0c 0x01a1 Processo AL / Task Manager
0x0c 0x01a2 Attività / applicazione AL Select
0x0c 0x01a3 Attività / applicazione AL Next
0x0c 0x01a4 Attività / applicazione precedente AL
0x0c 0x01a5 Attività di interruzione preventiva / app AL.
0x0c 0x01a6 Centro assistenza integrato con AL 0x008a KEY_HELP
0x0c 0x01a7 Documenti AL 0x00eb DOCUMENTI_CHIAVE
0x0c 0x01a8 Thesaurus AL
0x0c 0x01a9 Dizionario AL
0x0c 0x01aa AL Desktop
0x0c 0x01ab Controllo ortografico AL 0x01b0 KEY_SPELLCHECK
0x0c 0x01ac Controllo grammaticale dell'AL
0x0c 0x01annuncio Stato wireless AL
0x0c 0x01ae Layout tastiera AL
0x0c 0x01af Protezione antivirus AL
0x0c 0x01b0 Crittografia AL
0x0c 0x01b1 Salvaschermo AL
0x0c 0x01b2 Sveglie AL
0x0c 0x01b3 Orologio AL
0x0c 0x01b4 Browser file AL
0x0c 0x01b5 Stato alimentazione AL
0x0c 0x01b6 Browser immagini AL 0x00e2 MEDIA_KEY_MEDIA 3,0 0x004f KEYCODE_HEADSETHOOK
0x0c 0x01b7 Browser AL Audio 0x00d5 AUDIO_CHIAVE 4.0.3 0x00d1 KEYCODE_MUSIC
0x0c 0x01b8 Browser film AL
0x0c 0x01b9 Digital Rights Manager di AL
0x0c 0x01ba Portafoglio digitale AL
0x0c 0x01bc Messaggistica istantanea AL 0x01ae KEY_MESSENGER
0x0c 0x01bd AL OEM - Funzionalità / Suggerimenti per il browser 0x0166 KEY_INFO
0x0c 0x01be Guida per OEM AL
0x0c 0x01bf Community online AL
0x0c 0x01c0 Browser dei contenuti per l'intrattenimento con AL
0x0c 0x01c1 Browser per lo shopping online con AL
0x0c 0x01c2 Guida / Informazioni sulle smartcard AL
0x0c 0x01c3 AL Market / Browser Finance
0x0c 0x01c4 Browser News AL Personalized Corp.
0x0c 0x01c5 Browser attività online AL
0x0c 0x01c6 Ricerca nell'AL / Browser di ricerca
0x0c 0x01c7 Lettore audio AL
0x0c 0x0201 Nuovo AC 0x00b5 KEY_NOVITÀ
0x0c 0x0202 AC aperta 0x0086 KEY_OPEN
0x0c 0x0203 Chiusura AC 0x00ce CHIAVE_CHIUDI
0x0c 0x0204 Uscita aria condizionata 0x00ae CHIAVE_ESCI
0x0c 0x0205 Ingrandimento AC
0x0c 0x0206 Minimizzazione aria condizionata
0x0c 0x0207 Risparmio AC 0x00ea SALVA_CHIAVE
0x0c 0x0208 Stampato AC 0x00d2 KEY_PRINT
0x0c 0x0209 Proprietà AC 0x0082 KEY_PROPS
0x0c 0x021a Annulla AC 0x0083 KEY_UNDO
0x0c 0x021b Copia AC 0x0085 KEY_COPY
0x0c 0x021c Taglio aria condizionata 0x0089 CHIAVE_CUT
0x0c 0x021d Pasta AC 0x0087 INCOLLA_CHIAVE
0x0c 0x021e Seleziona tutto AC
0x0c 0x021f Ricerca AC 0x0088 TROVA_CHIAVE
0x0c 0x0220 Ricerca e sostituzione AC
0x0c 0x0221 Ricerca AC 0x00d9 RICERCA CHIAVE 1,6 0x0054 RICERCA CODICE CHIAVE
0x0c 0x0222 Vai a AC 0x0162 KEY_GOTO
0x0c 0x0223 Home page AC 0x00ac KEY_HOMEPAGE 3,0 0x0003 KEYCODE_HOME
0x0c 0x0224 Dorso AC 0x009e KEY_BACK 1,6 0x0004 CODICE_CHIAVE
0x0c 0x0225 Deviazione CA 0x009f KEY_FORWARD 3,0 0 x 007 g CODICE_CHIAVE
0x0c 0x0226 Arresto di climatizzazione 0x0080 KEY_STOP 3,0 0x0056 KEYCODE_MEDIA_STOP
0x0c 0x0227 Aggiornamento AC 0x00annuncio AGGIORNA_CHIAVE
0x0c 0x0228 Link precedente AC
0x0c 0x0229 Link AC Next
0x0c 0x022a Preferiti AC 0x009c KEY_BOOKMARK 3,0 0x00ae KEYCODE_BOOKMARK
0x0c 0x022b Cronologia AC
0x0c 0x022c Abbonamenti AC
0x0c 0x022d Zoom avanti aria condizionata 0x01a2 KEY_ZOOMIN
0x0c 0x022e Zoom indietro aria condizionata 0x01a3 KEY_ZOOMOUT
0x0c 0x022f Zoom AC 0x01a4 REIMPOSTAZIONE_ZOOM_CHIAVE 2
0x0c 0x0230 Visualizzazione a schermo intero AC
0x0c 0x0231 Visualizzazione normale CA
0x0c 0x0232 Pulsante di attivazione/disattivazione della vista AC
0x0c 0x0233 Scorrimento AC verso l'alto 0x00b1 SCORRIMENTO_CHIAVE 3,0 0x005c KEYCODE_PAGE_UP
0x0c 0x0234 Scorrimento AC verso il basso 0x00b2 SCORRIMENTO_CHIAVE 3,0 0 x 005 g KEYCODE_PAGE_DOWN
0x0c 0x0236 Panoramica con alimentazione a sinistra
0x0c 0x0237 Panoramica dell'AC a destra
0x0c 0x0239 AC Nuova finestra
0x0c 0x023a Riquadro AC orizzontalmente
0x0c 0x023b Riquadro AC verticalmente
0x0c 0x023c Formato AC
0x0c 0x023d Modifica aria condizionata
0x0c 0x023e AC Grassetto
0x0c 0x023f Corsivo AC
0x0c 0x0240 Sottolineato AC
0x0c 0x0241 AC barrato
0x0c 0x0242 Pedice AC
0x0c 0x0243 Apice AC
0x0c 0x0244 AC tutti i cilindri
0x0c 0x0245 Rotazione AC
0x0c 0x0246 Ridimensionamento AC
0x0c 0x0247 Capovolgimento AC orizzontale
0x0c 0x0248 Capovolgimento AC (verticale)
0x0c 0x0249 Specchio AC orizzontale
0x0c 0x024a Specchio AC verticale
0x0c 0x024b Selezione carattere AC
0x0c 0x024c Colore carattere AC
0x0c 0x024d Dimensione carattere AC
0x0c 0x024e Giustifica AC a sinistra
0x0c 0x024f Centro di giustificazione AC H
0x0c 0x0250 Giustifica AC a destra
0x0c 0x0251 Blocco giustificazione AC - H
0x0c 0x0252 Giustifica AC in alto
0x0c 0x0253 Centro di giustificazione AC V
0x0c 0x0254 Giustifica AC in basso
0x0c 0x0255 Blocco giustificazione AC V
0x0c 0x0256 Diminuzione rientro AC
0x0c 0x0257 Aumento rientro AC
0x0c 0x0258 Elenco numerato AC
0x0c 0x0259 Numerazione riavvio AC
0x0c 0x025a Elenco puntato AC
0x0c 0x025b Promozione AC
0x0c 0x025c Retrocessione aria condizionata
0x0c 0x025d AC Sì
0x0c 0x025e N. CA
0x0c 0x025f Annullamento AC 0x00df CANCELLA CHIAVE
0x0c 0x0260 Catalogo AC
0x0c 0x0261 Acquisto / pagamento AC
0x0c 0x0262 Aggiungi al carrello AC
0x0c 0x0263 Espansione AC
0x0c 0x0264 Espandi tutto AC
0x0c 0x0265 Compressione AC
0x0c 0x0266 Comprimi tutto AC
0x0c 0x0267 Anteprima di stampa AC
0x0c 0x0268 Pasta speciale AC
0x0c 0x0269 Modalità di inserimento dell'aria condizionata
0x0c 0x026a Eliminazione AC
0x0c 0x026b Blocco aria condizionata
0x0c 0x026c Sblocco AC
0x0c 0x026d Protezione AC
0x0c 0x026e AC non protetta
0x0c 0x026f Allega commento AC
0x0c 0x0270 Eliminazione commento AC
0x0c 0x0271 Visualizza commento AC
0x0c 0x0272 Selezione parola AC
0x0c 0x0273 Frase di selezione AC
0x0c 0x0274 Paragrafo Selezione AC
0x0c 0x0275 Colonna di selezione AC
0x0c 0x0276 Selezione riga AC
0x0c 0x0277 Tabella di selezione aria condizionata
0x0c 0x0278 Oggetto selezione AC
0x0c 0x0279 Ripetizione / ripetizione AC 0x00b6 KEY_REDO
0x0c 0x027a Ordinamento AC
0x0c 0x027b Ordinamento AC (ordine crescente)
0x0c 0x027c Ordinamento AC decrescente
0x0c 0x027d Filtro aria condizionata
0x0c 0x027e Orologio impostato con aria condizionata
0x0c 0x027f Visualizzazione orologio AC
0x0c 0x0280 Seleziona fuso orario AC
0x0c 0x0281 Modifica fusi orari con climatizzazione
0x0c 0x0282 Sveglia impostata con aria condizionata
0x0c 0x0283 Allarme climatizzatore
0x0c 0x0284 Sveglia posticipata con aria condizionata
0x0c 0x0285 Allarme reset AC
0x0c 0x0286 Sincronizzazione CA
0x0c 0x0287 Invio/ricezione AC
0x0c 0x0288 Invia a CA
0x0c 0x0289 Risposta dell'AC 0x00e8 RISPOSTA_CHIAVE
0x0c 0x028a AC - Rispondi a tutti
0x0c 0x028b Messaggio inoltro AC 0x00e9 KEY_FORWARDMAIL
0x0c 0x028c Invio AC 0x00e7 KEY_SEND
0x0c 0x028d File di allegato AC
0x0c 0x028e Caricamento AC
0x0c 0x028f Download AC (Salva target con nome)
0x0c 0x0290 Bordi set aria condizionata
0x0c 0x0291 Inserisci riga AC
0x0c 0x0292 Colonna di inserimento AC
0x0c 0x0293 File di inserimento AC
0x0c 0x0294 Immagine con inserto AC
0x0c 0x0295 Inserisci oggetto AC
0x0c 0x0296 Simbolo Inserimento AC
0x0c 0x0297 Salva e chiudi AC
0x0c 0x0298 Ridenominazione aria condizionata
0x0c 0x0299 Unione AC
0x0c 0x029a Ripartizione AC
0x0c 0x029b Distribuzione AC orizzontalmente
0x0c 0x029c Distribuzione AC verticalmente

Mappature non HID aggiuntive

Queste mappature descrivono le funzioni che non vengono visualizzate in HID, ma per le quali Linux sono presenti codici chiave.

LKC Nome codice chiave Linux Versione AKC Nome codice chiave Android Note
0x01d0 KEY_FN 3,0 0x0077 KEYCODE_FUNCTION
0x01d1 KEY_FN_ESC 3,0 0 x 006F KEYCODE_ESCAPE 3
0x01d2 KEY_FN_F1 3,0 0x0083 CODICE CHIAVE_F1 3
0x01d3 KEY_FN_F2 3,0 0x0084 CODICE CHIAVE_F2 3
0x01d4 KEY_FN_F3 3,0 0x0085 CODICE CHIAVE_F3 3
0x01d5 KEY_FN_F4 3,0 0x0086 CODICE CHIAVE_F4 3
0x01d6 KEY_FN_F5 3,0 0x0087 CODICE CHIAVE_F5 3
0x01d7 KEY_FN_F6 3,0 0x0088 CODICE CHIAVE_F6 3
0x01d8 KEY_FN_F7 3,0 0x0089 CODICE CHIAVE_F7 3
0x01d9 KEY_FN_F8 3,0 0x008a CODICE CHIAVE_F8 3
0x01da KEY_FN_F9 3,0 0x008b CODICE CHIAVE_F9 3
0x01db KEY_FN_F10 3,0 0x008c CODICE CHIAVE_F10 3
0x01dc KEY_FN_F11 3,0 0 x 008 g CODICE CHIAVE_F11 3
0 x 01 gg KEY_FN_F12 3,0 0x008e CODICE CHIAVE_F12 3
0x01de KEY_FN_1 3,0 0x0008 CODICE CHIAVE_1 3
0x01df KEY_FN_2 3,0 0x0009 CODICE CHIAVE_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 CODICE_CHIAVE 3
0x01e4 KEY_FN_B 3,0 0x001e KEYCODE_B 3

Chiavi precedenti non supportate

Queste mappature apparivano nelle versioni precedenti di Android, ma non erano coerenti con HID o utilizzo di codici chiave Linux non standard. Non sono più supportati.

LKC Nome codice chiave Linux Versione AKC Nome codice chiave Android Note
0x00db EMAIL_CHIAVE 1,6 0x004d CODICE_CHIAVE 4
"" "" 4.0 4
0x00e3 STELLA_CHIAVE 1,6 0x0011 KEYCODE_STELLA 4
"" "" 4.0 4
0x00e4 KEY_SHARP 1,6 0x0012 KEYCODE_POUND 4
"" "" 4.0 4
0x00e5 KEY_SOFT1 1,6 0x0052 MENU KEYCODE 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 CENTRO_CHIAVE 1,6 0x0017 KEYCODE_DPAD_CENTER 4
"" "" 4.0 4
0x00e9 KEY_HEADSETHOOK 1,6 0x004f KEYCODE_HEADSETHOOK 4
"" "" 4.0 4
0x00ea CHIAVE_0_5 1,6 4
0x00eb CHIAVE_2_5 1,6 4

Note

  1. Il codice chiave Android associato ai caratteri alfanumerici e simbolici comuni I tasti possono variare in base al layout e alla lingua della tastiera. Per motivi storici, i codici di scansione fisici e gli utilizzi dell'HID associate ai tasti di una tastiera sono spesso definite in modo anche se le etichette stampate sui tasti possono variare da uno linguaggio a un altro.

    Su una tastiera inglese americana (QWERTY), il tasto alfabetico in alto a sinistra è con etichetta Q. Su una tastiera francese (AZERTY), il tasto nella stessa posizione è etichettata A. Nonostante l'etichetta, su entrambe le tastiere la chiave alfabetica in alto a sinistra è indicata utilizzando l'uso dell'HID 0x07 0x0014 mappato al codice chiave Linux KEY_Q.

    Se Android è configurato con un layout di tastiera inglese americano, il codice della chiave Linux KEY_Q sarà mappato al codice della chiave Android KEYCODE_Q e produrrà i caratteri "Q" e "q". Tuttavia, quando Android è configurato con un layout di tastiera francese, il codice della chiave Linux KEY_Q sarà mappato al codice della chiave Android KEYCODE_A e produrrà i caratteri "A" e "a".

    Il codice chiave Android di solito rispecchia le specifiche della lingua chiave, quindi è possibile che un codice chiave Android diverso essere utilizzato per diverse lingue.

  2. 0x0c 0x022f AC Zoom è definito nell'HID come controllo lineare, ma il kernel la mappa come una chiave, il che probabilmente non è corretto.

  3. I tasti funzione Linux KEY_FN_* sono mappati alla versione più semplice codici chiave, ma vengono inviati con il meta stato META_FUNCTION impostato su true.

  4. Prima di Android Ice Cream Sandwich 4.0, il layout dei tasti predefinito contenevano mappature per alcuni codici chiave aggiuntivi che non erano stati definiti nelle intestazioni del kernel Linux principali. Queste mappature hanno dato sono stati rimossi perché questi codici chiave precedentemente non definiti perché sono stati assegnati significati diversi nelle versioni più recenti del kernel Linux.

Fonti

  1. Tabelle di utilizzo HID USB v1.12
  2. kernel Linux 2.6.39: include/linux/input.h, driver/hid/hid-input.c
  3. ICS di Android: qwerty.kl, Generic.kl, KeyEvent.java