accessibilityservice无法点击到浮窗

想自动化点击一个安卓app里的浮窗,浮窗本身不是clickable的,使用的dispatchGuesture模拟的点击,但失败了。使用类似游戏蜂窝这样的app录制脚本是可以点击到的。不懂里面的差别在哪里

你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答


本次提问扣除的有问必答次数,将会以问答VIP体验卡(1次有问必答机会、商城购买实体图书享受95折优惠)的形式为您补发到账户。


因为有问必答VIP体验卡有效期仅有1天,您在需要使用的时候【私信】联系我,我会为您补发。

是不是权限有问题,蜂窝这种脚本一般需要root权限,如果是内部进行实现这种点击一般也是需要额外的权限说明,不过这个每个版本都不太一样,可以查一下

如果你能保证你的accessibilityservice代码没有写错,那有可能是该软件做了点击防御。
第二个脚本,实现机制不知道,有可能是直接模拟系统点击。

因为游戏蜂窝本身其实包含了一个模拟器,游戏没有真正运行在实体机上,而是在游戏蜂窝的容器里运行。在这个容器里,游戏蜂窝有着最高的控制权限,想干嘛就干嘛。
而模拟点击是不具备这种条件的,所以在游戏蜂窝里可以而模拟点击不行。

没有相关代码,找出差异是很难的。

如果设备开启tcp方式的adb,那么可以在app内部连接adb,使用input命令注入事件的

(1)配合ADB命令进行屏幕位置模拟点击(缺点是需要设备ROOT)
(2)使用AccessibilityService API7.0 中的dispatchGesture()的方法(只兼容Android7.0以上设备)