開發(fā)中,遇到了需要模擬鍵盤事件的問題抒抬。在這里做一個(gè)簡(jiǎn)單總結(jié)膊畴。
使用模擬鍵盤事件翘盖,需要知道對(duì)用按鍵的對(duì)照表。
參考這個(gè)博客
使用Instrumentation類操作
Instrumentation inst = new Instrumentation();
try {
inst.sendKeyDownUpSync(66); // 這個(gè)66 映射碼 標(biāo)識(shí) 回車鍵米死。
} catch (Exception e) {
Log.e("tag", "事件出現(xiàn)異常" + e.getMessage());
}
try {
//這個(gè)事件代表 Shift + tab 組合鍵倦蚪。
long downTime = SystemClock.uptimeMillis();
long eventTime = downTime;
inst.sendKeySync(new KeyEvent(downTime, eventTime, KeyEvent.ACTION_DOWN, 61, 0, KeyEvent.META_SHIFT_ON));
inst.sendKeySync(new KeyEvent(downTime, eventTime, KeyEvent.ACTION_UP, 61, 0, KeyEvent.META_SHIFT_ON));
} catch (Exception e) {
Log.e("tag", "事件出現(xiàn)異常" + e.getMessage());
}
還有一種方式
try
{
String keyCommand = "input keyevent " + keycode;
Runtime runtime = Runtime.getRuntime();
Process proc = runtime.exec(keyCommand);
} catch (IOException e)
{
e.printStackTrace();
}