Once, I was playing with a number of Chinese tablets and trying different ROMs on them as they are technically the same hardware (HSG X5A variants).
I've had some problems getting the hard buttons to work though, so I wrote this application to detect key events and print them out. It will print out the following:
KeyEvents: The KeyEvents as Android understands them (KeyUp, KeyDown, KeyLongPress, KeyMultiple)
LogCat: Any relevant messages in logcat. Its filtered based on keywords declared in arrays.xml
Kernel: Any relevant messages in the kernel log. Its filtered based on keywords declared in arrays.xml. Kernel log parsing needs root.
The three checkboxes at the top control what information will be displayed.
This is a personal debug tool, but I hope it will be of some use to someone else.
No Ads.
Notes
--------------
While the application is running, the only "hard" keys which should work is "Home" and power. All others will produce their keycodes.
The SU request is to read the kernel log, so I can check if any keyevents are thrown by the kernel.
The location of keylayout files in Android is /system/usr/keylayout.
Kernel log parsing needs root
Both logcat and kernel log monitoring will only display lines containing words from two arrays in arrays.xml (i.e. you need to recompile the app to change them at the moment)
Currently the filters are:
Logcat:
|-HwGPIOE->GPDA
|-keycode
|-keycharacter
Kernel:
|-HwGPIOE->GPDA
|-keycode
|-keycharacter
Permissions
--------------
READ_LOGS: Used to access the Logcat log.
WRITE_EXTERNAL_STORAGE: Used to write the exported data to the SD card.
</div> <div jsname="WJz9Hc" style="display:none">Sekali, saya telah bermain dengan beberapa tablet Cina dan cuba ROM berbeza pada mereka kerana mereka adalah dari segi teknikal perkakasan yang sama (HSG X5A varian).
Saya mempunyai beberapa masalah mendapatkan butang sukar untuk bekerja walaupun, jadi saya telah menulis permohonan ini untuk mengesan peristiwa penting dan mencetak mereka keluar. Ia akan mencetak berikut:
KeyEvents: The KeyEvents sebagai Android memahami mereka (KeyUp, KeyDown, KeyLongPress, KeyMultiple)
LogCat: Sebarang mesej yang berkaitan dalam logcat. Yang ditapis berdasarkan kata kunci yang diisytiharkan dalam arrays.xml
Kernel: Sebarang mesej yang berkaitan dalam log kernel. Yang ditapis berdasarkan kata kunci yang diisytiharkan dalam arrays.xml. Kernel log menghuraikan memerlukan akar.
Tiga kotak di kawalan atas apa maklumat akan dipaparkan.
Ini adalah alat debug peribadi, tetapi saya berharap ia akan menjadi berguna kepada orang lain.
Tiada Iklan.
Nota
--------------
Walaupun permohonan itu sedang berjalan, satu-satunya kunci "keras" yang harus bekerja adalah "Home" dan kuasa. Semua yang lain akan menghasilkan kod kekunci mereka.
Permintaan SU adalah untuk membaca log kernel, jadi saya boleh menyemak jika ada keyevents dibuang oleh kernel.
Lokasi fail keylayout dalam Android / sistem / usr / keylayout.
Log Kernel menghuraikan memerlukan akar
Kedua-dua logcat dan kernel pemantauan log hanya akan memaparkan baris yang mengandungi kata-kata dari dua tatasusunan dalam arrays.xml (iaitu anda perlu untuk ulanghimpun apl menukar mereka pada masa ini)
Pada masa ini penapis adalah:
Logcat:
| -HwGPIOE-> GPDA
| -keycode
| -keycharacter
Kernel:
| -HwGPIOE-> GPDA
| -keycode
| -keycharacter
Kebenaran
--------------
READ_LOGS: Digunakan untuk mengakses log Logcat itu.
WRITE_EXTERNAL_STORAGE: Digunakan untuk menulis data dieksport ke kad SD.</div> <div class="show-more-end">