需求
有时候画面静止了,可能会导致脚本出现死循环卡在某个位置。
这时候就需要判断画面内容是否变化。
有多种判断和处理方式,这一节先来讲一种颜色判断法。
思路
在页面上,设置几个固定的坐标点,然后循环检测每个点的颜色值,和前一次获取的颜色值是否相同或相似。
相同或相似,就认为画面静止了。
设置一个静止计数器,静止次数到达上限,就认为画面卡住了。
实现
以下检测方法适配了全分辨率
调用检测方法
-- 调用检查函数
for i = 1, 100 do
if checkIfScreenIsStable() then
print('屏幕画面卡住了')
break
end
sleep(2000)
end
测试运行日志
[18:22:38.282] 获取初始颜色值...
[18:22:38.334] 屏幕画面静止 1/20
[18:22:40.402] 屏幕画面静止 2/20
[18:22:42.453] 屏幕画面静止 3/20
[18:22:44.568] 屏幕画面静止 4/20
[18:22:46.656] 屏幕画面静止 5/20
[18:22:48.769] 屏幕画面静止 6/20
[18:22:50.888] 屏幕画面静止 7/20
[18:22:52.994] 屏幕画面静止 8/20
[18:22:55.088] 屏幕画面静止 9/20
[18:22:57.216] 屏幕画面静止 10/20
[18:22:59.345] 屏幕画面静止 11/20
[18:23:01.469] 屏幕画面静止 12/20
[18:23:03.562] 屏幕画面静止 13/20
[18:23:05.669] 屏幕画面静止 14/20
[18:23:07.784] 屏幕画面静止 15/20
[18:23:09.904] 屏幕画面静止 16/20
[18:23:12.040] 屏幕画面静止 17/20
[18:23:14.061] 画面变化
[18:23:14.062] 屏幕画面发生变化
[18:23:16.065] 获取初始颜色值...
[18:23:16.196] 屏幕画面静止 1/20
[18:23:18.240] 画面变化
[18:23:18.242] 屏幕画面发生变化
[18:23:20.247] 获取初始颜色值...
[18:23:20.303] 屏幕画面静止 1/20
[18:23:22.393] 屏幕画面静止 2/20
[18:23:24.442] 屏幕画面静止 3/20
[18:23:26.529] 屏幕画面静止 4/20
[18:23:28.576] 屏幕画面静止 5/20
[18:23:30.663] 屏幕画面静止 6/20
[18:23:32.727] 屏幕画面静止 7/20
[18:23:34.809] 屏幕画面静止 8/20
[18:23:36.864] 屏幕画面静止 9/20
[18:23:38.947] 屏幕画面静止 10/20
[18:23:41.009] 屏幕画面静止 11/20
[18:23:43.056] 屏幕画面静止 12/20
[18:23:45.119] 画面变化
[18:23:45.122] 屏幕画面发生变化
1. 官方交流QQ群,添加多个不批。建议使用安卓手机或电脑申请。
飞云脚本圈: 586333520
Auto.js学习交流③群:286635606
Auto.js学习交流②群:712194666(满员)
IOS免越狱自动化测试群:691997586
2. 盗版,破解有损他人权益和违法作为,请各位会员支持正版。
3. 本站部分资源来源于用户上传和网络搜集,如有侵权请提供版权证明并联系站长删除。
4.如未特别申明,本站的技术性文章均为原创,未经授权,禁止转载/搬运等侵权行为。
5.全站所有付费服务均为虚拟商品,购买后自动发货。售出后概不接受任何理由的退、换。注册即为接受此条款。
6.如果站内内容侵犯了您的权益,请联系站长删除。
飞云脚本 » 【懒人精灵】全分辨率图色脚本里判断画面是否发生变化
飞云脚本圈: 586333520
Auto.js学习交流③群:286635606
Auto.js学习交流②群:712194666(满员)
IOS免越狱自动化测试群:691997586
2. 盗版,破解有损他人权益和违法作为,请各位会员支持正版。
3. 本站部分资源来源于用户上传和网络搜集,如有侵权请提供版权证明并联系站长删除。
4.如未特别申明,本站的技术性文章均为原创,未经授权,禁止转载/搬运等侵权行为。
5.全站所有付费服务均为虚拟商品,购买后自动发货。售出后概不接受任何理由的退、换。注册即为接受此条款。
6.如果站内内容侵犯了您的权益,请联系站长删除。
飞云脚本 » 【懒人精灵】全分辨率图色脚本里判断画面是否发生变化