You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android 13触发触摸事件遇INJECT_EVENTS权限SecurityException问题求助

解决INJECT_EVENTS权限导致的SecurityException问题

你遇到的java.lang.SecurityException是因为INJECT_EVENTS属于系统级权限,普通签名的APP无法直接获取,以下是具体解决思路:

核心权限限制

INJECT_EVENTS权限的保护级别为signature|privileged,只有满足任一以下条件的APP才能使用:

  • 采用与当前Android系统一致的签名进行编译签名
  • 将APP安装到/system/priv-app目录下(需要设备Root权限)

你之前尝试的普通签名完全不满足上述要求,所以问题无法解决。

替代方案(无需系统权限)

如果只是需要实现触摸事件注入的需求,可以考虑以下两种方式:

  1. 测试场景下使用Instrumentation:把注入逻辑放到Android测试APK中(而非普通应用APK),通过Android Test Framework运行测试用例,此时Instrumentation会自动获得事件注入权限。
  2. 使用ADB命令:通过adb shell input tap <x坐标> <y坐标>命令模拟触摸点击,或者adb shell input swipe <起始x> <起始y> <结束x> <结束y> <时长>模拟滑动,无需在APP中申请任何权限。

针对你的代码说明

你直接在普通应用中实例化Instrumentation并调用sendPointerSync()的方式,在非系统级APP中完全行不通,因为普通APP没有权限调用该系统API。

内容的提问来源于stack exchange,提问作者kishan verma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 12:52:38