dispatchKeyEvent不响应Instrumentation模拟发送的按键

来源:互联网 发布:淘宝网电警棍 编辑:程序博客网 时间:2024/06/04 19:54

问题背景:项目代码中通过以下函数模拟发送按键事件:

/**

     * 传入需要的键值即可 
     * 需要系统权限
     * @param keyCode 
     */  
    public static void sendKeyCode(final int keyCode){
        LOG.print("sendKeyCode --- keyCode = " + keyCode);
        
        new Thread () {  
            public void run() {  
                try {  
                    Instrumentation inst = new Instrumentation();  
                    inst.sendKeyDownUpSync(keyCode);  
                } catch (Exception e) {  
                      e.printStackTrace();
                }  
            }  
        }.start();  

    }  

正常情况下,通过该函数发送的模拟按键事件,是能够导致dispatchKeyEvent(KeyEvent event)这函数被调用的。但是项目中却始终没有被调用。那是什么原因引起的呢??


经查是因为这个系统中没有安装任何输入法的apk而导致的这个问题。

0 0
原创粉丝点击