Una vez, estaba jugando con varias tabletas chinas y probando diferentes ROM en ellas, ya que técnicamente son el mismo hardware (variantes HSG X5A).
Sin embargo, he tenido algunos problemas para que los botones duros funcionen, así que escribí esta aplicación para detectar eventos clave e imprimirlos. Imprimirá lo siguiente:
KeyEvents: KeyEvents como Android los entiende (KeyUp, KeyDown, KeyLongPress, KeyMultiple)
LogCat: cualquier mensaje relevante en logcat. Se filtra en función de las palabras clave declaradas en arrays.xml
Kernel: cualquier mensaje relevante en el registro del kernel. Se filtra en función de las palabras clave declaradas en arrays.xml. El análisis del registro del núcleo necesita root.
Las tres casillas de verificación en la parte superior controlan qué información se mostrará.
Esta es una herramienta de depuración personal, pero espero que sea de alguna utilidad para otra persona.
Sin anuncios.
Notas
--------------
Mientras se ejecuta la aplicación, las únicas teclas "duras" que deberían funcionar son "Inicio" y energía. Todos los demás producirán sus códigos clave.
La solicitud de SU es leer el registro del kernel, para que pueda verificar si el kernel produce algún evento clave.
La ubicación de los archivos keylayout en Android es / system / usr / keylayout.
El análisis del registro del núcleo necesita root
Tanto la supervisión de logcat como la de kernel solo mostrarán líneas que contienen palabras de dos arrays en arrays.xml (es decir, debe volver a compilar la aplicación para cambiarlas en este momento)
Actualmente los filtros son:
Logcat:
| -HwGPIOE-> GPDA
| -código
| -carácter clave
Núcleo:
| -HwGPIOE-> GPDA
| -código
| -carácter clave
Permisos
--------------
READ_LOGS: se utiliza para acceder al registro de Logcat.
WRITE_EXTERNAL_STORAGE: se utiliza para escribir los datos exportados en la tarjeta SD.
Esta aplicación es de código abierto. El código se puede encontrar aquí: https://github.com/alt236/KeyEvent-Display---Android