Hi I am writing a program which captures the keys pressed by user in android and displays it in Ubuntu. According to what I read, Android's input event device is structured around an interrupt or polling routine that captures the device-specific scancode and converts it to a standard form acceptable to Linux (as defined in input.h) before passing it to the kernel with input_event(). There are the steps which describe the translation from keyboard input to application action: 1. Window manager reads key event from Linux keyboard driver. 2. Window manager maps scancode to keycode. 3. Window manager sends both the scancode and the keycode to the application.
Now in my application I have an EditText which returns the keycode of any key which is pressed. So basically this is what I have: public boolean onKey(View v, int keyCode, KeyEvent event) { // TODO Auto-generated method stub String a ="";a+=keyCode; txt.setText(a); return false; } Now I get this keycode value but it does not correspond to the scancode value. For example, the keycode value for 'A' is 29 but the scancode is 30. There is no correlation I can see between the input.h scancodes and these keycodes either. My question is, I want to know how step 2 (the mapping) above takes place. My applications aim is to echo whatever I type on my android keyboard on my Ubuntu desktop (I can connect between the 2 without a problem, so you don't have to worry about that). Any help would be appreciated, as I have looked online for quite a bit. -- You received this message because you are subscribed to the Google Groups "Android Beginners" group. To post to this group, send email to android-beginners@googlegroups.com To unsubscribe from this group, send email to android-beginners+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-beginners?hl=en