使用adb命令实现支付宝半自动扫福浇水

前言:

这几天听小伙伴说参加了一个5亿的大项目,仔细一问才知道,支付宝一年一度集五福活动又开始了,刚开始我还想每人直接发2块钱不得了,后来我才知道我错了,今年加了一个花花卡,扫到此卡免费替你还一年的花呗,这可是大奖,估计今年扫福的人会比较多。我也想扫个花花卡,扫着扫着我发现一个问题,就是没扫到时必须点一下“我知道”才能继续扫,除了扫福浇水也可以得福,今天我就通过浇水弄了一个敬业福,浇水也是同样的问题,必须不停的点 “为福气林浇水10g”才行。这就影响效率了。
使用adb命令实现支付宝半自动扫福浇水_第1张图片

需求分析:

通过分析整个扫福过程,要提高扫福的效率,解放双手,就得通过实现自动点击 “我知道” 或者 “为福气林浇水10g”按钮。

功能实现:

找adb命令

首先我想到了使用AccessbilityService实现一下,试了一下没成功,后来想到使用自动点击事件来处理。百度了一下发现有一个adb命令可以实现点击事件,adb shell input tap x y (x,y表示要点击点的坐标),如果获取到“我知道” 和 “为福气林浇水10g” 的坐标就可以成功了。

找坐标:

找坐标可以使用 开发者工具:打开指针位置,这时触摸点的坐标会显示在屏幕的做上角。
使用adb命令实现支付宝半自动扫福浇水_第2张图片

在我的手机上: “我知道”的坐标是542 1605, 这下位置也拿到了,我迫不及待的在电脑端的cmd命令行输入:adb shell input tap 542 1605,可是一点反应的都没有,可能是哪里出了问题,我又仔细看了看开发者工具里边,发现USB模拟点击的开关是关着的,可能是这里出了问题,把这个开关打开,成功了,但是这里还有个问题,一次只能点击一次,和之前没任何区别,如果能实现循环点击就好了。
使用adb命令实现支付宝半自动扫福浇水_第3张图片

循环点击:

查了一些资料后,发现可以使用循环语句来处理。如下:把下边的代码保存到txt文件里,比如我保存的是扫福.txt。注意:你自己试的时候换一下坐标(542(x坐标) 1605(y坐标)),因为每个手机的分辨率不一样,坐标会不同。

while true
do
delay=1
sleep $delay
input tap 542 1605
done

然后执行:

adb shell < 扫福.txt ,就可以愉快的扫福了。

其他补充:

这里补充下用到的东西。adb,这个这里没说怎么弄,其实就是在电脑上配好adb环境变量,手机打开USB调试,用数据线连着手机,在cmd运行这个命令就行了。关于浇水怎么没说,浇水其实和这个原理一样,把坐标换一下坐标就行了。

意义:

1.解放双手,实现自动扫福,学以致用

2.每到扫福期间,总会看到有人在嗮自己好多福,这里就想告诉大家他们是怎么弄的那么多福的。

局限性:

扫福有次数限制,浇水每次扣能量,这个没有突破。

总结:

关键命令:adb shell input tap x y

最后祝大家都能扫到花花卡和敬业福

如果您有更好的方法欢迎交流

我是IT小王,如果喜欢我的文章,可以扫码关注我的微信公众号
使用adb命令实现支付宝半自动扫福浇水_第4张图片

你可能感兴趣的:(Android开发)