如何使用提升的 root 权限执行检测

How to perform instrumentation with elevated root permissions

我想使用 Instrumentation 在我的应用之外执行触摸事件。我已经授予 INJECT_EVENTS 权限,但它不起作用。我搜索了解决方案并发现:如果我将我的应用程序安装为系统应用程序(在 system/app 中),系统将自动授予我的应用程序 INJECT_EVENTS 权限。

我的问题是如何使用 root 权限执行此类提升的检测操作。我应该使用什么命令来执行此方法?

instrumentationObj.sendPointerSync(MotionEvent.obtain(SystemClock.uptimeMillis(), SystemClock.uptimeMillis(), MotionEvent.ACTION_DOWN, x, y, 0));

我的应用程序有一个小浮动 window,它在特定的 x 和 y 坐标处生成触摸事件,例如 ACTION_DOWN、ACTION_UP。

我用这个答案解决了我的问题。

我使用 xposed frame work 和 XInstaller 来禁用应用程序签名检查和应用程序验证。这允许我的应用程序使用 INJECT_EVENTS 权限。