Android在其他应用程序上注入触摸事件

时间:2015-12-25 08:34:11

标签: android touch-event android-backup-service

我想创建一个从我的应用程序中注入触摸事件的应用程序。简单的一个就是每5秒触摸posX,posY(计时器)。

我刚创建了一个仅适用于activity的应用。

以下是执行触摸事件的代码。

new Thread(new Runnable() {
            @Override
            public void run() {
                m_Instrumentation.sendPointerSync(MotionEvent.obtain(SystemClock.uptimeMillis(),
                        SystemClock.uptimeMillis(), MotionEvent.ACTION_DOWN, posX, posY, 0));
                m_Instrumentation.sendPointerSync(MotionEvent.obtain(SystemClock.uptimeMillis(),
                        SystemClock.uptimeMillis(),MotionEvent.ACTION_UP,posX, posY, 0));
            }
        }).start();

然后我在INJECT_EVENTS

中添加了AndroidManifest.xml权限
<uses-permission android:name="android.permission.INJECT_EVENTS"></uses-permission>

我还将我的应用程序作为系统应用程序通过将其根目录更改为/system/app

当我运行我的应用时,只需在一秒钟内触摸posXposY即可正常工作。但是当我绘制导航栏或者只是尝试最小化我的应用程序时,它会因错误而关闭。

injecting to another application requires inject_events permission

请帮我解决这个问题,或者如果你有任何测试项目发给我。 感谢。

0 个答案:

没有答案