模拟对另一个应用程序的活动的触摸

时间:2013-05-24 13:50:39

标签: android android-activity touch ontouchevent

是否可以在Android中模拟touch events从一个应用到另一个应用?也许使用具有SYSTEM_ALERT属性的服务或不可见活动来接收input touches,然后将它们模拟到另一个应用程序的另一个活动,该活动直接位于应用程序的透明活动之下。这可能吗?

[UPDATE]

考虑到FoamyGuy的答案,是否可以使用隐形SYSTEM_ALERT活动来过滤掉某些触摸事件?我知道你可以撤销活动的输入。是否可以撤销选择性输入?或者我还需要创建自定义ROM吗?

2 个答案:

答案 0 :(得分:1)

这是不可能的。这将引起重大安全问题。您可以使用Instrumentation API将事件注入到您自己的活动中,但不能将事件注入任何不属于您自己的活动。

这样做的能力可以避免用户交互做某些事情(即安装/卸载应用程序)的必要性。

如果您希望能够这样做,则必须在您自己的设备上修改系统才能启用它。

答案 1 :(得分:1)

是的,如果您的应用程序使用平台证书签名,您可以使用INJECT_EVENTS权限并在任何应用程序上注入事件:

http://developer.android.com/reference/android/Manifest.permission.html#INJECT_EVENTS