我想创建一个将触摸事件注入我的应用程序的应用程序。简单的操作,例如每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
,从而将我的应用程序作为系统应用程序进行了创建>[运行我的应用程序时,每秒触摸一次
posX
和posY
即可正常工作。但是,当我绘制导航栏或尝试最小化我的应用程序时,不幸的是它关闭并出现错误。
injecting to another application requires inject_events permission
[请帮助我解决此问题,或者如果您有任何测试项目,请发送给我。谢谢。
我想创建一个将触摸事件注入我的应用程序的应用程序。简单的操作,如每5秒钟(定时器)触摸posX,posY。我刚刚创建了一个适用于我的活动的应用程序...
您的应用应该已经签名并带有平台签名才能正常工作。您可以使用创建自定义电话版本http://aosp.opersys.com/xref/android-10.0.0_r5/xref/frameworks/base/core/res/AndroidManifest.xml#2971