我正在尝试创建一个应用程序,该应用程序将在后台运行一个能够将触摸屏事件注入任何正在运行的活动的服务。我可以通过调用将事件注入到我的应用程序的一部分Activity中Instrumentation.sendPointerSync(motionEvent);
但是如果我尝试在没有运行应用程序的活动的情况下执行此操作,则会收到权限错误,说我没有INJECT_EVENTS权限。我已将此权限添加到我的清单中,如下所示:<uses-permission android:name="android.permission.INJECT_EVENTS"></uses-permission>
它仍然抛出相同的权限异常。经过一些搜索,我得到了答案,为了获得INJECT_EVENTS权限,您的应用必须使用与系统签名相同的签名进行签名。但我不清楚这究竟是什么意思。我将不得不找到一个自定义rom构建它并使用与该应用程序签名相同的签名对其进行签名。然后在我的设备上安装自定义ROM,然后安装我的应用程序,我将能够正确地注入触摸事件?如果是这种情况,我最好从一个已经放在一起的自定义rom开始,就像这个页面中的一个或者这是一个我需要获取android项目的git副本并构建整个myslef的情况?无论哪种方式,任何人都知道你可以指向我的地方,这会让我朝着正确的方向努力实现这一目标吗?
相关分类