基于autojs,实现每日自动报送学习积分

前言:

最近要求每天在微信小程序上学文章、看视频。 学完之后,要求上报学习积分。通过调试,我发现这个微信小程序,可以 通过autojs中对控件的操作,轻松获取学习积分,那么自动报送学习积分的灵感就来了。

开发环境:

autojs: 4.11 (低版本的就对了)
手机:小米10
安卓版本:12
MIUI版本: 13

演示视频:

基于autojs实现每日自动报送学习积分

正文:

1、通过autojs控件操作,抓取分数页面

如下图,通过分析此页面,发现此控件中的 text()函数不为空,这说明,它是有数值存在的。
在这里插入图片描述
那么,我就通过边界值bounds()的方式,先找到该控件。

	bounds(374,345,706,507).findOne(2000);

学过autojs的可能会问?
1、为什么不通过id、indexInParent、className去查找这个分数控件?
因为,通过截图大家也可以看出来,这个界面的控件太多了。所以,我通过这个控件在屏幕的边界值的方式,找到这个控件。
2、为什么你提供的截图里不显示bounds()值?
因为每个人的手机,分数控件在屏幕中的位置,都是不一样的。
这就需要你拿起autojs控件去调试,所以,我这里只是提供一种思路。
3、为什么是findOne(2000)?
这就涉及到autojs的知识了,如果findOne( )里的参数值为空,autojs一旦根据边界值找不到分数控件,就会死循环。这里写上2000ms,表示2秒之内找不到,就自动结束寻找。

然后,我通过新建变量x去接收这个控件,通过x.text()的方法,抓取到每日学习积分。

	var x =bounds(374,345,706,507).findOne(2000);
	console.log(x.text());

2、通过手机系统剪切板,报送分数

要想实现分数报送,那就需要把第一步抓取的分数,复制到剪切板,然后粘贴到你需要报送的APP上。
这里,我选择报送的APP是微信。
通过setClip()函数粘贴

	var y =x.text();
	setClip("今日学习分数:"+ y);

通过paste()函数粘贴

	var y =desc("微信").findOne(2000);
		y.click();
	click(666,666);//这里填写的是你的  文件助手在手机中的坐标值
	paste();//这里直接粘贴就行了

需要注意的就是,安卓10以上的系统,提高了对剪切板的访问权限,可能你的手机不让autojs把抓取的分数,粘贴到剪切板上。
这一点要尤为注意。

完整代码

	var x =bounds(374,345,706,507).findOne(2000);//找到分数控件
	var y =x.text();
	setClip("今日学习分数:"+ y);//复制分数
	sleep(1000);
	home();//回到系统桌面
	desc("微信").findOne(2000).click();//打开微信
	sleep(1000);
	click(543,2258);//点击输入框
	paste();//粘贴分数
	sleep(200);
	click(979,1303);//找到发送位置的坐标

每天都是下了班🚌,
拖着疲惫的身躯😴,
分享我的创作的🔑。
希望大家能点个关注📌,
或者赞赏支持下作者🎁,
激励我去努力的创作🤭。

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

晓梦林

都看到这里了,支持一下作者呗~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值