Git Product home page Git Product logo

ant-forest's Introduction

GitHub forks GitHub stars GitHub issues Page Views Count

简介

基于 Autojs 的蚂蚁森林自动收能量脚本,采用 AutoJS Modify 版本开发。解锁模块参考自:https://github.com/e1399579/autojs

  • 脚本执行依赖于:AutoJS Modify困鱼,4.1.1原作者完全不会再维护且已经删库,同时存在较多内存泄露等问题、不支持Android12、脚本中部分特性也不支持,如本地OCR 多分辨率找图 等等。Pro限制无障碍操作且存在代码审查机制,不再受支持。

  • 更多版本下载:https://wwxs.lanzouq.com/b042le51i 密码:b034

  • 修改版Auto.js源代码:https://github.com/TonyJiangWJ/Auto.js

  • 本项目原始版本 https://github.com/Nick-Hopps/Ant-Forest-autoscript ,原作者Nick-Hoops已不再维护。虽然目前版本和原始版本代码已经完全不一样,但是还是非常感谢 Nick-Hoops

  • 设备系统要求

    • 具有 ROOT 权限的安卓 5.0 及以上版本
    • 没有 ROOT 权限的安卓 7.0 及以上版本
    • 因为图色识别的原因不支持护眼模式、暗色模式等。
  • 觉得本项目好用的话请给个star吧~

其他脚本

实验性功能

  • 1.4.0版本开始增加基于YOLO的目标检测算法,需要下载最新版本的AutoJS Modify困鱼
  • 请手动下载YOLO模型,并将其放置到config_data目录下,链接地址:https://github.com/TonyJiangWJ/Ant-Forest/releases/download/v1.1.1.4/forest_lite.onnx
  • 运行可视化配置,进入图像识别相关设置,打开使用YOLO模型识别能量球即可启用。如果当前AutoJS不支持或者模型未下载将自动降级使用旧版识别方案。
  • 从1.4.0版本开始将逐渐优化模型,将各种图片配置移除,尽量做的开箱即用
  • 原方案识别能量球速度大概3-40ms,YOLO模型大概100ms请自行取舍,YOLO识别默认关闭
  • shizuku支持,需要安装最新版的修改版AutoJS或困鱼,然后在抽屉中打开启用shizuku并进行授权,需要先将shizuku激活,具体操作请自行参考shizuku官方文档
  • 内置 独立工具/shizuku示例工具.js 可以进行媒体权限授权和Secure写入权限授权(用于自动开启无障碍权限),以及其他一些通过ADB可操作的实例功能请自行查看 shizuku

使用

  • 下载安装 AutoJS Modify困鱼 之后把整个脚本项目放进 "/sdcard/脚本/" 文件夹下面。打开软件后下拉刷新,然后运行项目或者 main.js 即可运行,首次运行请先进行部分必要配置否则部分功能不能正常运行,见配置小节
  • 给与软件必要权限 后台弹出界面显示悬浮窗自启动电量无限制,并将软件保持后台运行
  • 定时启动脚本,点击 main.js 的菜单,选择 更多 定时任务 即可配置定时启动
  • 如果运行提示有任务正在队列中,请运行配置 可视化配置.js 然后进到 高级设置 中勾选 单脚本运行,该功能是用于多个脚本同时运行时的任务队列 相当于一个调度程序,避免多个脚本抢占前台导致出错
  • 当前版本森林只通过逛一逛收集能量,排行榜中仅获取倒计时数据,需要配置逛一逛(收能量)按钮位置或图片信息。更多配置信息见配置小节
  • 运行有问题请查看#常见问题小节
  • 不同手机的解锁方法不同可能不适配,需要自行编写解锁方法,具体见#添加解锁设备小节
  • ocr优先使用mlkit,不支持时尝试paddleocr,最后使用百度(需要配置API KEY,而且每天有500次的次数限制),推荐直接使用修改版或下载ocr插件mlkit-ocr插件下载
  • 关于本地OCR的说明,mlkit-ocr速度非常快,但是缺点是识别准确性不佳,目前基本能满足所需要的识别功能。PaddleOCR识别准确性很高但是缺点是速度慢,而且必须给AutoJS设置电量无限制权限否则容易闪退,另外就是必须安装我的修改的AutoJS困鱼 才能使用PaddleOCR。
  • 当前版本仅通过逛一逛收取,排行榜中只识别倒计时信息不识别帮收和可收取,有一定几率会漏收倒计时刚刚结束的能量

配置

运行 可视化配置.js 后可以看到如下配置:

  • 常用配置按不同类别进行分组,按实际内容进入对应菜单项目即可
  • 所有列表项都可以左滑触发删除或修改,部分输入框也能左滑触发高级输入操作如区域配置和颜色值配置等,多多摸索
  • 运行配置后右上角菜单可以重置所有配置信息为默认值
  • 配置导出导入功能,点击右上角菜单即可导出当前配置到local_config.cfg中,默认已加密加密密码为当前设备id 可以通过此函数获取到剪切板,或自己打印 setClip(device.getAndroidId()) 如果需要在免费版和付费版AutoJS之间同步 需要自行创建脚本获取该密码
  • 运行时数据导出导入功能同上所述
  • 重要 因为当前手机分辨率多种多样,请前往 查找图片设置 按说明截取相应位置的图片,特别是逛一逛按钮,避免运行不正常
  • 一键收功能需要自行配置图片,否则功能无法生效
  • 重要 基于图像分析模式必须按如下配置,否则脚本无法正常执行
  • 好友首页的能量球无法通过控件识别,请进行如下配置:
  • 图像识别区域信息可以在运行可视化配置.js之后进入 图像识别相关配置 直接点击 实时查看可视化配置信息 按钮来刷新配置并显示当前的框选区域。也可以在配置完之后可以运行test/全局悬浮窗显示-配置信息.js 查看配置生效状况,可在 resources 目录下截图保存 region_check.jpg ,然后可以悬浮窗显示半透明信息,方便在运行 可视化配置.js 时拖动进度条快速调整具体区域
  • 区域信息输入框可以左滑,以显示可拖动控件
  • 更多其他配置信息请运行 可视化配置.js 后自行摸索

功能

  • 自动匹配不同系统下自动化的方式,安卓 7 及以上可以通过无障碍服务模拟操作,7以下版本需要通过 root 权限模拟操作;

  • 自动识别屏幕锁定方式并根据配置的密码解锁,支持图形解锁,PIN 解锁,混合密码解锁;特殊设备需要自行扩展,具体见#添加解锁设备小节

  • 图形密码根据数字位置填写到锁屏密码即可,具体数字和手势位置如何对应自行尝试即可了解一二

  • 同时支持支付宝手势解锁

  • 识别自己能量球的倒计时,和好友列表中的倒计时做对比,取最小值作为下次收取的等待时间;

  • 识别好友能量罩,下一次收取时跳过开启能量罩的好友;

  • 可以根据指定时间段自动使用双击卡

  • 默认使用倒计时收取,可通过配置打开循环收取;

  • 可选择永不停止模式,无倒计时或超过激活时间(激活时间可以设置为随机范围)则在激活时间之后继续执行,否则按倒计时时间等待,实现全天不间断收集;

  • 根据白名单实现不收取特定好友能量;

  • 可以设定收取达到一定阈值后自动浇水回馈 默认阈值当日收集超过40克即浇水一次,同时可配置不浇水回馈的黑名单

  • 浇水回馈数量可配置,可选:10 18 33 66

  • 脚本运行时可以显示悬浮窗展示当前状态

  • 开始收集的时候按 音量减 可以延迟五分钟再执行,适合需要使用手机的时候使用,按 音量加 则关闭脚本终止执行

  • 收取完毕后悬浮框显示收取的能量数量

  • 支持切换小号进行能量收集和能量雨,运行 可视化配置 进入 多账号管理 增加支付宝账号并设置昵称用于能量雨自动赠送,并勾选一个主账号。需要确保增加的账号在当前设备可以免密切换。

  • 循环小号并执行能量雨会根据多账号管理中配置的昵称按顺序自动赠送给下一个账号,即配置了A、B、C三个账号,能量雨运行时会自动的A->B->C->A的顺序进行赠送,这样三个账号都能获得三次机会。因此请确保正确配置了账号昵称

  • 设置完毕后可以手动执行或者设置每天的定时任务

    • 自动收集 unit/循环切换小号并收集能量.js 支持小号给大号浇水
    • 自动循环执行能量雨 unit/循环切换小号并执行能量雨收集.js 建议同时关闭逛一逛结束自动执行能量雨的功能
    • 自动同步设备步数 unit/循环切换小号用于同步数据.js
  • 可以自动打开无障碍,需要配合adb赋权,不同的软件请自行替换包名: 可以通过 context.getPackageName() 获取

      adb shell pm grant org.autojs.autojs.modify android.permission.WRITE_SECURE_SETTINGS
  • 通过ADB授权脚本自动获取无障碍权限

  • ROOT设备可以实现自动锁屏,非ROOT设备理论上安卓9以上都可以通过无障碍进行锁屏,如果无障碍锁屏失败需要扩展锁屏方法,具体见#添加自定义锁屏代码,默认实现的是下拉状态栏中指定位置放了个锁屏按键

  • 脚本更新 可以执行update/检测更新.js,也可以运行可视化配置后点击右上角菜单调出弹窗进行更新。

  • 可以将配置数据以及运行时数据进行导入和导出,内容通过AES加密,默认密码是 device.getAndroidId(),因此仅本机可用。如果需要跨设备或者免费版和Pro版之间备份,自行获取 device.getAndroidId() 然后根据提示输入即可

  • 通话状态监听,当通话中或者来电时自动延迟五分钟执行,需要授予AutoJS软件获取通话状态的权限[该功能暂不可靠,且Pro版无法使用]

  • 可以配置在锁屏状态下判断设备姿势,防止在裤兜内误触(基于重力加速度传感器)

  • unit 下提供了多个自定义模式的切换脚本,执行后会自动打断当前运行中的脚本然后按新的设置启动。

    • 自定义1永不停止.js 25-35分钟的随机范围轮询一次,有倒计时按倒计时时间执行,适合9-23点。可以对它设置每天9点的定时任务
    • 自定义2计时停止.js 按倒计时时间执行,最长等待时间60分钟,适合早上执行和晚上23点执行,避免0点后继续无意义的永不停止。可以对它设置7点、23点以及0点的定时任务
    • 自定义3循环千次只收自己.js 循环收集自己的,适合自己能量快要生成的时候执行,因为每天步行能量生成时间是固定的,因此在生成前一分钟设置定时任务即可,然后再设置2分钟后的定时任务自定义2计时停止.js
    • 其他自定义方式请自行创建,内容参考以上文件和config.js中的字段
  • 支持能量收集统计 查看每天能量值增量和收集好友能量数据 参考如下: hourly_summary daily_summary

循环/计时模式、永不停止模式等详细说明

  • 循环模式:脚本会根据设置的次数不间断的循环执行直到当前执行了指定次数之后便会停止。
  • 计时模式:当关闭循环模式,且不开启永不停止模式时,启用计时模式。计时模式需要设置最大等待时间,默认为60分钟,脚本执行时会通过OCR识别排行榜中的倒计时时间,如果得到的最小倒计时时间小于最大等待时间,那么脚本将会按识别到的最小倒计时计时启动,否则脚本将退出执行。
  • 永不停止模式:关闭循环模式并开启永不停止,此时需要设置重新激活时间,当识别到的倒计时时间小于这个重新激活时间时,脚本会按实际倒计时计时启动,当识别到的倒计时时间大于重新激活时间时,则按重新激活时间来计时启动。以此循环实现全天不间断的执行。这个重新激活时间可以设置为一个随机范围,每次判断都会在指定范围内生成一个随机的时间。
  • 以上计时模式和永不停止模式依赖于OCR的正常运行,如果设备分辨率为1080P的建议直接将自建OCR识别和百度OCR识别关闭,此时会启用模拟的识别,准确率和速度都相较OCR来说更理想。其他分辨率设备则没怎么测试过,自行斟酌。

能量雨收集

  • 增加了自动收集能量雨的脚本。运行 unit/能量雨收集.js 也可以在可视化配置中打开。然后打开能量雨界面,并手动开始,点击开始脚本会自动识别并点击
  • 可配置自动赠送好友机会以获得一次能量雨机会,好友名支持正则匹配。
  • 能量雨为暴力点击,基本百分百能得到满分。
  • 配合 多账号管理unit/循环切换小号并执行能量雨收集.js (创建定时任务)可以实现每天自动收集小号的能量雨
  • 无小号时,对 unit/自动启动并执行能量雨.js 创建定时任务即可每天自动执行一遍

自动巡护

  • 运行 unit/自动巡护.js 或对其创建定时任务,可自动执行保护地巡护,执行后自动将步数兑换5次巡护机会并自动巡护。每日保底为3+5次巡护

神奇海洋收集

  • unit/神奇海洋收集.js 创建每天7点后的定时任务
  • 在可视化配置-图像识别相关配置-神奇海洋相关配置 配置OCR识别区域,垃圾球角标位置等配置 按实际提示进行配置
  • OCR需要至少安装MlKitOCR插件或者修改版AutoJS 否则自动创建两小时后的定时任务
  • 神奇海洋默认无法通过无障碍点击收集,请在神奇海洋设置中关闭3D模式。入口在神奇海洋右上角三点菜单中,点击“设置”按钮,然后关闭“3D模式”即可
  • 脚本默认尝试shizuku点击,如已关闭3D模式日志相关提示无视即可

常见问题

  • 可视化配置.js 执行异常,运行 unit/功能测试-重置默认配置.js 依旧有问题,尝试重启AutoJS,并检查AutoJS的版本是否为 AutoJS Modify困鱼,其他版本可能有兼容性问题,另外Pro版不再支持。
  • 可视化配置 运行后显示白屏或者显示 加载失败 大概是因为某个网络资源加载失败了,请退出重新打开,多试几次即可。
  • 如果报错 Function importClass must be called with a class;... 直接强制关闭AutoJS软件,然后再打开即可。一般只在跨版本更新后才会出现这个问题,最新版脚本已解决这个问题,建议安装 AutoJS Modify困鱼
  • 另外如果不断的运行异常,强制关闭AutoJS软件后重新执行脚本。同时建议定期强制关闭AutoJS软件,避免内存不断增长导致卡顿
  • 图像分析模式 如果识别有遗漏,尝试将 颜色相似度 调低 当前默认值已改为20,或者检查一下是否开启了护眼模式或者暗色模式。
  • 软件的定时任务,点击main.js的 三个点菜单->更多->定时任务 然后设置相应的时间即可
  • 报错 获取截图失败多次 请修改 获取截图等待时间 默认为500毫秒,自行调试选择适合自己的,或者直接取消勾选 是否异步等待截图
  • 其他问题可以提ISSUE,但是请勾选保存日志到文件,并将日志文件大小调整为1024,日志文件保存在 logs/log-verboses.log
  • 如果已经按说明配置后开启 是否直接基于图像分析收取和帮助好友 运行不正常,请先取消勾选,然后勾选 区域点击来收取能量, 同时自己扩展区域点击的方法,见下方的 #添加自定义区域点击代码
  • 定时任务不准,一般因为系统电量限制,在系统设置中启用自启动等。实在不行可以安装tasker发送广播触发脚本执行,具体请百度

其他问题反馈

  • 创建ISSUE 描述具体问题,提供相应的日志或者截图信息,最好说明一下当前使用的脚本版本以及AutoJS软件版本
  • 详细日志的文件为logs/log-verboses.log 默认保存100k之后会将旧日志保存到 logs/logback ;反馈问题时需要提供出问题时段的日志文件。
  • 日志文件如果觉得有隐私信息可以单独发我文件,或者删除敏感信息。邮箱: [email protected]

添加解锁设备

  • 具体开发需要获取到锁屏界面的控件信息,可以运行 /unit/获取锁屏界面控件信息.js 根据提示进行操作,然后得到相应的布局信息进行开发,或者在执行完之后发起ISSUE并提供 logs/info.log 文件让开发者帮忙。
  • 脚本根目录下新建extends文件夹,然后创建ExternalUnlockDevice.js文件,内容格式如下自定义
  • 修改完毕后运行 test/测试解锁.js 即可对解锁代码进行测试
  • 更多扩展可以参考extends/ExternalUnlockDevice-demo.js
module.exports = function (obj) {
  this.__proto__ = obj

  this.unlock = function(password) {
    // 此处为自行编写的解锁代码

    // 在结尾返回此语句用于判断是否解锁成功
    return this.check_unlock()
  }

}

添加自定义锁屏代码

  • 同解锁设备,在extends文件夹下创建LockScreen.js,内容可以参考LockScreen-demo.js 实现自定义锁屏
  • 扩展代码之后可以执行 test/TestLockScreen.js 来调试是否生效
  • 安卓9以上可以基于无障碍实现自动锁屏,不需要通过此方法来实现。
  let { config: _config } = require('../config.js')(runtime, global)

  module.exports = function () {
    // MIUI 12 偏右上角下拉新控制中心
    swipe(800, 10, 800, 1000, 500)
    // 等待动画执行完毕
    sleep(500)
    // 点击锁屏按钮
    click(parseInt(_config.lock_x), parseInt(_config.lock_y))
  }

分享你的配置

  • 如果你想分享你的自定义扩展代码,可以提交到 这个分支下,比如解锁代码 可以命名为 ExternalUnlockDevice-手机型号.js 并提交到 extends 目录下,方便其他用户下载使用
  • 想获取其他网友分享的代码可以前往这个分支下载,或者等我集成发布

更新记录

目前存在的问题

  • 可能存在收集完一个好友后,因为没有获取到该好友剩余能量球的倒计时导致漏收
  • 部分系统,如我使用的MIUI12因为省电策略的问题(即便设置了白名单无限制自启动),导致AutoJS软件的定时任务无法准时运行。非脚本自身问题
  • 新发现问题请提交ISSUE,我会尽快跟进解决

请开发者喝咖啡

  • 欢迎使用支付宝或微信请我喝杯咖啡

    • 一元喝速溶、5元喝胶囊、12买全家、33星巴克感激不尽

    alipay_qrcode wechat_qrcode

  • 支付宝扫码领红包,你拿红包我也有份。

  • 扫码领红包

感谢充电~

alipay

  • *剑
  • **杰
  • **佑
  • **豪
  • **旸
  • **渔
  • **真
  • **刚
  • **刚
  • **亚
  • **成
  • *毅
  • **杰
  • *之
  • **旸
  • *硕
  • **杰
  • **宏
  • **鲁
  • *赟
  • *鹏
  • **杰
  • **恒
  • *鹏
  • **光
  • **彬
  • **胜
  • **庭
  • **光
  • **杰
  • **俊
  • *森
  • *悦

wechat

  • z*g
  • *鸟
  • *鸟
  • *明
  • *妖
  • **昌
  • **昌
  • **昌
  • *济
  • *🧸
  • A*g
  • **昌
  • **昌
  • *信
  • **昌
  • *涛
  • J*k
  • *🍅
  • *🧸
  • F*sW
  • **昌
  • F*sW
  • **昌
  • *z
  • **昌
  • **昌
  • *🍃

ant-forest's People

Contributors

nick-hopps avatar tonyjiangwj avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ant-forest's Issues

脚本放置路径问题

1, 如果将整个目录存放于手机的 \脚本\ 下面, 则一切运行正常;
2, 如果希望将目录归档到子目录, 比如 \脚本\支付宝\ 目录下面, 则运行出错, 目前追踪到 /脚本/支付宝/Ant-Forest-master/lib/FileUtils.js, 能力有限继续不下去 , 可否麻烦作者检查一下,谢谢

一些修改建议

在使用的过程中,我有一些好的建议:

1.颜色相似度和悬浮窗位置建议建议不要采用拖动滑块的方式来输入,非常难以操作并且无法精确输入值。
2.既然有不收取的白名单,不浇水的黑名单,我觉得还应该有个不帮他收取的名单
3.永不停止的模式下,倒计时可否设置一个随机值?比如50~60之间的随机值
4.是否可以增加一个功能:半夜(比如23:00-次日5:00)不收取能量?

版本1.2.1.5 在好友页不能自动收取问题

手机:小米6
系统:MIUI11
Ant-Forest版本:1.2.1.5
问题描述:在好友页,定位不了能量球,不能制动收取。
error.log的日志:

2020-05-02 21:28:58.788 ERROR [E:21] - 错误位置:当前所在位置为好友排行榜
2020-05-02 21:29:18.132 ERROR [E:21] - 等待控件[好友首页]失败, 查找内容:浇水|发消息
2020-05-04 10:52:15.480 ERROR [E:22] - 无法获取toast内容,直接返回[]
2020-05-04 10:52:18.295 ERROR [E:22] - 等待控件[好友首页]失败, 查找内容:浇水|发消息
2020-05-06 10:37:57.253 ERROR [E:25] - 等待控件[个人首页]失败, 查找内容:背包|通知|攻略|种树
2020-05-06 10:38:12.844 ERROR [E:25] - 等待控件[好友首页]失败, 查找内容:浇水|发消息
2020-05-06 10:38:22.25 ERROR [E:25] - 等待控件[好友首页]失败, 查找内容:浇水|发消息
2020-05-06 10:38:31.205 ERROR [E:25] - 等待控件[好友首页]失败, 查找内容:浇水|发消息
2020-05-06 10:46:00.295 ERROR [E:28] - 等待控件[好友首页]失败, 查找内容:浇水|发消息
2020-05-06 10:46:09.469 ERROR [E:28] - 等待控件[好友首页]失败, 查找内容:浇水|发消息
2020-05-06 10:46:18.645 ERROR [E:28] - 等待控件[好友首页]失败, 查找内容:浇水|发消息
2020-05-06 10:46:27.820 ERROR [E:28] - 等待控件[好友首页]失败, 查找内容:浇水|发消息
2020-05-06 10:46:36.994 ERROR [E:28] - 等待控件[好友首页]失败, 查找内容:浇水|发消息
2020-05-06 10:46:38.199 ERROR [E:28] - 页面流程出错,重新开始
2020-05-06 10:46:38.225 ERROR [E:28] - 流程出错 向上抛出
2020-05-06 10:46:38.249 ERROR [E:28] - 收集好友能量失败,重新开始
2020-05-06 10:46:41.569 ERROR [E:28] - 错误位置:当前所在位置为好友排行榜
2020-05-06 10:46:56.522 ERROR [E:28] - 等待控件[好友首页]失败, 查找内容:浇水|发消息
2020-05-06 10:47:05.694 ERROR [E:28] - 等待控件[好友首页]失败, 查找内容:浇水|发消息
2020-05-06 10:47:14.861 ERROR [E:28] - 等待控件[好友首页]失败, 查找内容:浇水|发消息

zfb又更新了

大佬,今天上午9点突然发出现收不了朋友的能量了,找了半天找到原因,蚂蚁森林又更新了,朋友首页“你收取TA”标签没了。这zfb天天更天天更真的恼火。我暂时把朋友首页判断改成了“浇水”哈哈,等你的更新。

华为mate30无法自动解锁

Screenshot_20200116_153810_org autojs autojs
只有这个截图,log没有找到更多具体的信息,如果哪个地方有具体的log,烦请告诉我,谢谢!不知道在哪里可以有相关学习的资料也行!

展示今日收集能量信息.js待完善

看了下unit下的脚本,发现展示今日收集能量信息.js这个模块不错
但是似乎还在施工中且一直没有更新维护

提一点小的建议:
1.生成的内容希望可以保存到log或者其它文件,目前好像只能看到,关闭就没有了(重要)
2.继续完善本周收集能量信息甚至更长时间的信息(我好像记得之前的版本是有统计本周收取和帮收的但是最新版没了,只有当日)
3.生成的格式不知可否格式化为json、xml、csv之类的格式方便导入电脑excel分析统计存档留念

收集能量的统计信息相信在手机端看了也是白看,此模块最大的作用在于通过统计帮助清理能量经常排在末位的好友,所以能在每周末定时运行保存出来导入excel进行自定义的排序还是非常重要的

有线程执行失败

最新版本,前几天一切正常,今天早上7点仅偷取了一点点的能量便开始“有线程执行失败”,分析可帮助可收取点的耗时明显超时并且没有正确分析出来导致收取失败,观察记录“将线程池关闭然后重建线程池”后依然失败,手动重新运行main.js脚本却可以正常运行,直至下午1点又出现问题,以下是部分log。

2020-01-19 13:07:54.637:[ERROR]有线程执行失败 运行中的线程数:1
2020-01-19 13:07:54.640:[DEBUG]将线程池关闭然后重建线程池
2020-01-19 13:07:54.641:[DEBUG]分析所有可帮助和可收取的点耗时5449ms
2020-01-19 13:07:54.642:[DEBUG]无可收取或帮助的内容
2020-01-19 13:07:56.743:[DEBUG]获取到screen成功
2020-01-19 13:07:56.761:[DEBUG]准备检测颜色:#f99236
2020-01-19 13:07:56.796:[DEBUG]可帮助的点:[]
2020-01-19 13:07:56.800:[DEBUG]准备检测颜色:#1da06a
2020-01-19 13:07:56.830:[DEBUG]可收取的点:[{"x":1014.0,"y":1759.0}]
2020-01-19 13:07:56.832:[DEBUG]重新分析后的点:[{"x":1014.0,"y":1759.0}]
2020-01-19 13:07:56.835:[DEBUG]获取可帮助和可能可收取的点耗时76ms
2020-01-19 13:07:58.520:[DEBUG]准备获取[{"x":1014.0,"y":1759.0}]的同色[#87]点区域
2020-01-19 13:08:02.139:[ERROR]有线程执行失败 运行中的线程数:1
2020-01-19 13:08:02.142:[DEBUG]将线程池关闭然后重建线程池
2020-01-19 13:08:02.143:[DEBUG]分析所有可帮助和可收取的点耗时5306ms
2020-01-19 13:08:02.144:[DEBUG]无可收取或帮助的内容

版本更新后main和config都不能正常运行

运行config报错
Auto.js Pro:错误: 函数importClass必须与一个类一起调用;改为使用“[JavaPackage com.stardust.autojs.ScriptEngineService]”.(<init>#14)
运行main报错
Auto.js Pro:导入模块[CommonFucntion]失败,请检查代码

另外运行AutoScriptBase没有问题

AutoJS版本:8.0.0-5

更新后收朋友出现问题

image
前天支付宝更新后出现问题,进入朋友列表后卡住不动,然后提示获取截图失败多次,重新执行脚本。多试几次偶尔会成功开始下滑,滑几下又卡住。
版本1.3.0
华为mate20pro emui10.1 支付宝10.1.95

获取目前设置的定时开始的列表

因为设置了很多定时开始的条目,经常一个还没有运行完另一个又开始了,有没有途径可以查看设置了哪些定时条目,然后可以把不需要的删除了

收取好友停止在总列表

自己的能量收取完毕之后,进入好友排行榜,停滞几秒后,脚本重启,log记录“上次收取有遗漏”,然后不断重复以上步骤,无法收取好友能量。

错误位置:当前所在位置为好友首页

最近蚂蚁森林在首页发了一篇推送,名为《这是你种的蚂蚁森林》
导致一定几率会匹配.*的蚂蚁森林而被误认为这是好友首页不是个人首页
(我也不知道为什么是一定几率而不是每次)
报错错误位置:当前所在位置为好友排行榜
另外识别好友首页的依据我好像记得是在config.js里面设置的好友首页的控件文本,
但是修改并没有效果

大概率7.3蚂蚁森林会更新一篇推送,所以这个问题其实emmm...

进入支付宝后,反复跳转蚂蚁森林

正常进支付宝和蚂蚁森林,但是之后会提示上次收取有漏收,再次收集,之后退出蚂蚁森林,重新进入,反复循环,无法正常收取能量,在华为P40P、P30P,魅族Pro7上都是这样,不知道有没有解决办法

不能进入蚂蚁森林界面, 一直卡在支付宝界面

机型:
小米9

step:

  1. 支付宝后台运行
  2. 启动脚本

result:
脚本运行后, 切换到支付宝界面, 但没有进入蚂蚁森林界面

error log:
2020-07-21 11:34:46.299 ERROR [E:14 T:18792] - 等待控件[个人首页]失败, 查找内容:查看更多动态.*
2020-07-21 11:34:57.992 ERROR [E:14 T:18792] - 等待控件[个人首页]失败, 查找内容:查看更多动态.*
2020-07-21 11:35:09.663 ERROR [E:14 T:18792] - 等待控件[个人首页]失败, 查找内容:查看更多动态.*
2020-07-21 11:35:27.988 ERROR [E:14 T:18792] - 等待控件[个人首页]失败, 查找内容:查看更多动态.*
2020-07-21 11:35:54.271 ERROR [E:15 T:18839] - 等待控件[个人首页]失败, 查找内容:查看更多动态.*
2020-07-21 11:36:05.916 ERROR [E:15 T:18839] - 等待控件[个人首页]失败, 查找内容:查看更多动态.*

判断帮助收取能量球失败,陷入无限循环

仔细观察可能是对方使用了汤圆树,程序错误把汤圆树当成可帮助收取能量球了。(不太确定,遇到两次以上,上一次没仔细观察=,=)
事实上随着蚂蚁森林的日常改版,好像经常会遇到这类判断错误的“小”问题。
建议加入一个保护机制:
连续2次进入同一用户主页且没有收取/帮收取能量则跳过收取/帮收取该用户。

朋友我每次运行main.js进了蚂蚁森林都会秒退回zfb主界面,然后就会再次进入蚂蚁森林,一只重复,这是什么原因啊?两次提示分别是:“上一次收取有漏收,再次收集”和“即将收取能量,运行中可按音量上键关闭”

朋友我每次运行main.js进了蚂蚁森林都会秒退回zfb主界面,然后就会再次进入蚂蚁森林,一只重复,这是什么原因啊?两次提示分别是:“上一次收取有漏收,再次收集”和“即将收取能量,运行中可按音量上键关闭”

Originally posted by @williamglasgow in #17 (comment)

校验排行榜失败、等待控件失败

2019-12-26 11:26:56.146:>>>>>>>收集自己的能量完毕<<<<<<<
2019-12-26 11:26:56.152:<<<<<<<开始收集好友能量>>>>>>>
2019-12-26 11:26:56.380:[DEBUG]准备校验区域[[170,230,810,100]]颜色是否匹配好友排行榜
2019-12-26 11:26:56.406:[DEBUG]图片大小:1080, 2340
2019-12-26 11:26:56.427:[ERROR]校验排行榜失败,匹配点{"x":978.0,"y":234.0}周围匹配的白色点数量:0
2019-12-26 11:26:57.461:[DEBUG]图片大小:1080, 2340
2019-12-26 11:26:57.481:[ERROR]校验排行榜失败,匹配点{"x":978.0,"y":234.0}周围匹配的白色点数量:0
2019-12-26 11:26:58.517:[DEBUG]图片大小:1080, 2340
2019-12-26 11:26:58.538:[ERROR]校验排行榜失败,匹配点{"x":978.0,"y":234.0}周围匹配的白色点数量:0
2019-12-26 11:26:59.569:[DEBUG]图片大小:1080, 2340
2019-12-26 11:26:59.596:[ERROR]校验排行榜失败,匹配点{"x":978.0,"y":234.0}周围匹配的白色点数量:0
2019-12-26 11:27:00.637:[DEBUG]图片大小:1080, 2340
2019-12-26 11:27:00.659:[ERROR]校验排行榜失败,匹配点{"x":978.0,"y":234.0}周围匹配的白色点数量:0
2019-12-26 11:27:00.663:[DEBUG]排行榜判断耗时:4280ms
2019-12-26 11:27:00.665:[DEBUG]进入好友排行榜失败
2019-12-26 11:27:00.666:[LOG]========本轮结束========
2019-12-26 11:27:00.668:[WARN]上一次收取有漏收,再次收集
2019-12-26 11:27:00.673:[LOG]已解锁
2019-12-26 11:27:00.675:[LOG]前置校验需要重新锁定屏幕
2019-12-26 11:27:00.680:[DEBUG]获取运行中任务信息:{"source":"/storage/emulated/0/脚本/Ant-Forest-master/main.js","engineId":36,"timeout":1577331707605} 超时剩余时间:887秒
2019-12-26 11:27:00.682:[DEBUG]当前有任务正在运行:{"source":"/storage/emulated/0/脚本/Ant-Forest-master/main.js","engineId":36,"timeout":1577331707605}
2019-12-26 11:27:00.683:[DEBUG]运行中脚本任务和当前任务相同,直接继续
2019-12-26 11:27:04.223:[LOG]立即开始
2019-12-26 11:27:04.228:[LOG]日期:2019-12-26,启动时能量:17814g, 截止当前已收集:416g, 已运行[123]次, 上轮收集:12g
2019-12-26 11:27:04.230:[INFO]即将收取能量,运行中可按音量上键关闭
2019-12-26 11:27:04.233:[INFO]========第124次运行========
2019-12-26 11:27:04.243:[DEBUG]展示悬浮窗内容:第 124 次运行, 累计已收集:416g
2019-12-26 11:27:04.315:[DEBUG]展示悬浮窗完毕
2019-12-26 11:27:04.320:[DEBUG]准备打开package: com.eg.android.AlipayGphone
2019-12-26 11:27:04.323:[DEBUG]启动:com.eg.android.AlipayGphone前所在package: org.autojs.autojs 已记录的启动跳板前package:
2019-12-26 11:27:05.332:[DEBUG]进入[com.eg.android.AlipayGphone] 成功
2019-12-26 11:27:07.377:[DEBUG]准备校验区域[[170,230,810,100]]颜色是否匹配好友排行榜
2019-12-26 11:27:07.405:[DEBUG]图片大小:1080, 2340
2019-12-26 11:27:07.445:[DEBUG]排行榜判断耗时:63ms
2019-12-26 11:27:07.499:[DEBUG]find text 背包|通知|攻略|种树 种树
2019-12-26 11:27:07.507:[DEBUG]等待控件成功:个人首页
2019-12-26 11:27:07.514:[LOG]进入个人首页成功
2019-12-26 11:27:07.579:[DEBUG]关闭蒙层成功
2019-12-26 11:27:07.623:[DEBUG]find id J_userEnergy
2019-12-26 11:27:07.644:[DEBUG]展示悬浮窗内容:第 124 次运行, 累计已收集:416g
2019-12-26 11:27:07.673:<<<<<<<开始收集自己能量>>>>>>>
2019-12-26 11:27:07.678:[DEBUG]准备收集自己能量
2019-12-26 11:27:07.715:[DEBUG]none of text or desc found for 收集能量\d+克
2019-12-26 11:27:07.721:[DEBUG]无能量球可收取
2019-12-26 11:27:07.726:[DEBUG]准备计算最短时间
2019-12-26 11:27:07.806:[LOG]无可收取能量
2019-12-26 11:27:07.812:>>>>>>>收集自己的能量完毕<<<<<<<
2019-12-26 11:27:07.817:<<<<<<<开始收集好友能量>>>>>>>
2019-12-26 11:27:08.74:[DEBUG]准备校验区域[[170,230,810,100]]颜色是否匹配好友排行榜
2019-12-26 11:27:08.110:[DEBUG]图片大小:1080, 2340
2019-12-26 11:27:08.129:[ERROR]校验排行榜失败,匹配点{"x":978.0,"y":234.0}周围匹配的白色点数量:0
2019-12-26 11:27:09.184:[DEBUG]图片大小:1080, 2340
2019-12-26 11:27:10.208:[DEBUG]排行榜判断耗时:2125ms
2019-12-26 11:27:10.217:[DEBUG]进入好友排行榜成功
正常收取省略......
2019-12-26 11:27:43.634:>>>>>>>收集好友能量结束<<<<<<<
2019-12-26 11:27:44.114:[DEBUG]text \d+’ found
2019-12-26 11:27:44.188:[DEBUG]get \d+’ container:倒计时数据总长度:2 文本属性来自[text]
2019-12-26 11:27:44.198:[DEBUG]获取倒计时最小值:[12]分
2019-12-26 11:27:44.205:[DEBUG]未收集能量直接获取倒计时列表
2019-12-26 11:27:44.213:[DEBUG]非仅收自己,返回主页面
2019-12-26 11:27:45.271:[DEBUG]准备校验区域[[170,230,810,100]]颜色是否匹配好友排行榜
2019-12-26 11:27:45.311:[DEBUG]图片大小:1080, 2340
2019-12-26 11:27:45.333:[DEBUG]排行榜判断耗时:52ms
2019-12-26 11:27:53.349:[ERROR]等待控件[个人首页]失败, 查找内容:背包|通知|攻略|种树
2019-12-26 11:27:54.871:[WARN]未能找到id:J_userEnergy对应的控件
2019-12-26 11:27:54.878:[LOG]当前能量:undefined
2019-12-26 11:27:54.891:[LOG]日期:2019-12-26,启动时能量:17814g, 截止当前已收集:416g, 已运行[124]次, 上轮收集:0g
2019-12-26 11:27:54.904:[DEBUG]展示悬浮窗内容:第 124 次运行, 累计已收集:416g
2019-12-26 11:27:56.384:[DEBUG]直接返回最小化支付宝

以上为日志,虽然可以正常收取,但是看日志似乎有些错误。
1.似乎每次收取完自己的能量都不能直接跳转到好友排行榜需要失败后自动重新运行脚本才能进入排行榜收取,不知是什么原因?
2.每次收取完能量都要过很久才能最小化支付宝,看日志似乎是等待控件失败(尝试修改检验空间是否存在超时的时间8000ms为800ms确实可以缩短最小化的时间,但是error的日志依然存在,不知是否正常)
(这个其实不重要)3.收取白名单好像经常失效,日志中找不到问题,(对方好友也不是每天有能量,很难判断当前是否正常)另外不知白名单是收取的白名单还是收取+帮收取的白名单,最好帮收取也有个白名单

项目暂停维护通知

无大问题不再继续维护

  • 目前已经比较稳定,无大问题不再维护,小问题自行阅读README 不再指导
  • 继续维护时间等过了春节再通知

这次蚂蚁森林界面更新导致的个别问题

这次zfb蚂蚁森林更新前都是正常使用,结果假面变化了以后运行总是在zfb主界面、森林主界面、好友列表界面,三者之间切换,前面几个issue说的问题我也有遇到,但这个问题貌似他们没有,能拜托帮我看一下问题出在哪里嘛?
ps抱歉这么长,我已经尽量删除了一些但不敢删太多

2020-05-01 00:19:01.248 INFO [E:10] - ========循环第1次运行========
2020-05-01 00:19:01.275 DEBUG [E:10] - 展示悬浮窗内容:第 1 次循环, 循环已收集:0g
2020-05-01 00:19:01.874 DEBUG [E:10] - 准备校验区域[[127,161,460,90]]颜色是否匹配好友排行榜
2020-05-01 00:19:01.917 DEBUG [E:10] - 图片大小:720, 1280
2020-05-01 00:19:01.956 DEVELOP [E:10] - 区域图片base64:「data:image/...
2020-05-01 00:19:10.169 ERROR [E:10] - 等待控件[个人首页]失败, 查找内容:背包|通知|攻略|种树
2020-05-01 00:19:10.195 WARN [E:10] - 程序未启动,尝试再次唤醒
2020-05-01 00:19:11.175 DEBUG [E:10] - 关闭H5
。。。
2020-05-01 00:19:19.724 DEBUG [E:10] - find text 背包|通知|攻略|种树 种树
2020-05-01 00:19:19.734 DEBUG [E:10] - 等待控件成功:个人首页
2020-05-01 00:19:19.740 LOG [E:10] - 进入个人首页成功
2020-05-01 00:19:19.766 DEBUG [E:10] - 关闭蒙层成功
2020-05-01 00:19:20.215 DEBUG [E:10] - find id J_userEnergy
...
2020-05-01 00:19:21.530 [E:10] - <<<<<<<开始收集好友能量>>>>>>>
2020-05-01 00:19:21.991 DEBUG [E:10] - 准备校验区域[[127,161,460,90]]颜色是否匹配好友排行榜
2020-05-01 00:19:22.100 DEBUG [E:10] - 图片大小:720, 1280
2020-05-01 00:19:22.139 DEVELOP [E:10] - 区域图片base64:「data:image/...
2020-05-01 00:19:23.203 DEBUG [E:10] - 图片大小:720, 1280
2020-05-01 00:19:23.254 DEVELOP [E:10] - 区域图片base64:「data:image/...
2020-05-01 00:19:23.295 DEVELOP [E:10] - [136,190] #0000a5 颜色不匹配
2020-05-01 00:19:23.325 DEVELOP [E:10] - [136,191] #00009f 颜色不匹配
2020-05-01 00:19:23.346 DEVELOP [E:10] - [135,190] #0000f0 颜色不匹配
...
2020-05-01 00:19:23.443 DEVELOP [E:10] - [136,199] #00009f 颜色不匹配
2020-05-01 00:19:23.449 DEVELOP [E:10] - [145,190] #0000a5 颜色不匹配
2020-05-01 00:19:24.456 DEBUG [E:10] - 排行榜判断耗时:2456ms
2020-05-01 00:19:24.461 DEBUG [E:10] - 进入好友排行榜成功
2020-05-01 00:19:24.467 DEBUG [E:10] - 图像分析即将开始
2020-05-01 00:19:24.576 DEBUG [E:10] - 获取到screen成功
2020-05-01 00:19:24.583 DEBUG [E:10] - 准备检测颜色:#f99236
2020-05-01 00:19:24.679 ERROR [E:10] - 发生异常 [ReferenceError: "debugForDev" is not defined.] ["debugForDev" is not defined.]
2020-05-01 00:19:24.687 LOG [E:10] - ========本轮结束========
2020-05-01 00:19:24.696 LOG [E:10] - 日期:2020-05-01,启动时能量:83526g, 截止当前已收集:0g, 已运行[9]次, 上轮收集:0g循环运行第1次
2020-05-01 00:19:24.703 INFO [E:10] - ========循环第1次运行========
2020-05-01 00:19:24.712 DEBUG [E:10] - 展示悬浮窗内容:第 1 次循环, 循环已收集:0g
2020-05-01 00:19:25.255 DEBUG [E:10] - 准备校验区域[[127,161,460,90]]颜色是否匹配好友排行榜
2020-05-01 00:19:25.318 DEBUG [E:10] - 图片大小:720, 1280
2020-05-01 00:19:25.352 DEVELOP [E:10] - 区域图片base64:「data:image...
2020-05-01 00:19:25.371 DEVELOP [E:10] - [136,190] #0000a5 颜色不匹配
2020-05-01 00:19:25.392 DEVELOP [E:10] - [136,190] #0000a5 颜色不匹配
2020-05-01 00:19:25.397 DEVELOP [E:10] - [136,191] #00009f 颜色不匹配
2020-05-01 00:19:25.409 DEVELOP [E:10] - [135,190] #0000f0 颜色不匹配
...
2020-05-01 00:19:25.485 DEVELOP [E:10] - [144,190] #0000a5 颜色不匹配
2020-05-01 00:19:25.489 DEVELOP [E:10] - [136,199] #00009f 颜色不匹配
2020-05-01 00:19:25.494 DEVELOP [E:10] - [145,190] #0000a5 颜色不匹配
2020-05-01 00:19:25.499 DEBUG [E:10] - 排行榜判断耗时:235ms
2020-05-01 00:19:25.502 ERROR [E:10] - 错误位置:当前所在位置为好友排行榜
2020-05-01 00:19:25.507 WARN [E:10] - 程序未启动,尝试再次唤醒
2020-05-01 00:19:25.820 DEBUG [E:10] - 关闭H5
2020-05-01 00:19:26.835 LOG [E:10] - 已解锁
2020-05-01 00:19:26.846 LOG [E:10] - 不需要重新锁定屏幕
2020-05-01 00:19:26.858 DEBUG [E:10] - 准备打开package: com.eg.android.AlipayGphone
2020-05-01 00:19:27.890 DEBUG [E:10] - 进入[com.eg.android.AlipayGphone] 成功
2020-05-01 00:19:28.194 WARN [E:10] - 关闭脚本
2020-05-01 00:19:28.210 DEBUG [E:10] - 获取运行中任务信息:{"source":"/storage/emulated/0/脚本/Ant-Forest-master/main.js","engineId":10,"timeout":1588264430259} 超时剩余时间:862秒
2020-05-01 00:19:28.215 DEBUG [E:10] - 准备移除运行中任务
2020-05-01 00:19:28.337 DEBUG [E:10] - 队列小于等于1 不需要去重:[]
2020-05-01 00:19:28.359 DEBUG [E:10] - 无任务等待中

发生异常 [ReferenceError: "temp" is not defined.]

更新了最新版,进入个人主页,自动点击几下,没有进入好友列表,又自动退出、重进,无限循环,但用上一版本按照上一个issue修改的代码没有什么问题

2020-04-30 22:04:00.198  [E:2] - <<<<<<<开始收集自己能量>>>>>>>
2020-04-30 22:04:00.203 DEBUG [E:2] - 准备收集自己能量
2020-04-30 22:04:00.209 DEBUG [E:2] - try to find all: 收集能量\d+克 timeout: 1000ms
2020-04-30 22:04:01.217 DEBUG [E:2] - 无能量球可收取
2020-04-30 22:04:01.222 DEBUG [E:2] - 准备计算最短时间
2020-04-30 22:04:01.269 LOG [E:2] - 无可收取能量
2020-04-30 22:04:01.276 DEBUG [E:2] - 阻塞等待toast结果
2020-04-30 22:04:01.279 DEBUG [E:2] - 使用默认的区域点击
2020-04-30 22:04:02.600 ERROR [E:2] - 无法获取toast内容,直接返回[]
2020-04-30 22:04:04.108 DEBUG [E:2] - temp
2020-04-30 22:04:04.114 DEBUG [E:2] - 阻塞等待结束,等待锁释放
2020-04-30 22:04:04.118 DEBUG [E:2] - 获取toast结果成功:
2020-04-30 22:04:04.122 ERROR [E:2] - 发生异常 [ReferenceError: "temp" is not defined.] ["temp" is not defined.]
2020-04-30 22:04:04.127 LOG [E:2] - ========本轮结束========

在主页报错

java.lang.illegalargumentexception:x + width must be <= bitmap.width(), 卡在自己的主页。没有进入排行榜

华为P30通过adb不能设置无障碍权限

华为p30通过adb设置无障碍服务无效.

[slydm@wangcong Ant-Forest]$ adb shell pm grant org.autojs.autojs android.permission.WRITE_SECURE_SETTINGS

上述命令执行后没明错误.
打开auto.js, 执行脚本依然提示需要开启无障碍服务. 查看权限状态,该权限确实没有打开.
有了解的朋友吗?
求指教.

[ERROR]等待控件[好友首页]失败,查找内容:浇水|发消息。可能和今天更新有关

感谢老哥新加的这些功能!
问题是之前使用正常,今天晚上用的时候会卡在有能量球的好友界面,查看error.log报错为

[ERROR]等待控件[好友首页]失败,查找内容:浇水|发消息 

连续五次后弹出开始重新收集,仍然卡在同一界面,报错为

[ERROR]页面流程出错,重新开始
[ERROR]流程出错 向上抛出
[ERROR]收集好友能量失败,重新开始
[ERROR]错误位置:当前所在位置为好友排行榜

之后继续之前的“等待控件[好友首页]”错误

感觉问题可能和今天支付宝更新的时候更新了蚂蚁森林的UI有关,尝试把查找内容改成现在的“弹幕|浇水”还是同样的报错。但在个人主页查找内容和实际文字不同仍然可以正常收取,就还是来提issue了。

“获取截图失败多次, 可能已经没有了截图权限,重新执行脚本”

大概不到一周前突然出现的新问题,从森林首页到好友列表,下滑到第二十个,之后的不刷新,然后就失败,出现上面的提示(及时手动下滑可以刷出来并继续),偶尔更严重的时候到了好友列表完全不动就出现一样的错误提示。
强制关闭、重启手机等方法都试了,发现重装zfb能解决问题,但一段时间内(短则几小时,长则一两天)又会出现,不过我还没尝试过重装autojs。
实在没办法了来咨询一下,大佬有空帮忙看一下是什么问题

log如下:

log-verboses logs for [2020-07-28 21:32:46]
2020-07-28 21:32:46.326 DEBUG [E:7 T:1720] - 获取截图失败 再试一次 count:1
2020-07-28 21:32:46.845 DEBUG [E:7 T:1720] - 获取截图失败 再试一次 count:2
2020-07-28 21:32:47.357 DEBUG [E:7 T:1720] - 获取截图失败 再试一次 count:3
2020-07-28 21:32:47.362 ERROR [E:7 T:1720] - 获取截图失败多次[3], 可能已经没有了截图权限,重新执行脚本
2020-07-28 21:32:47.373 LOG [E:7 T:1720] - 启动目标脚本:/storage/emulated/0/脚本/Ant-Forest-master/main.js
2020-07-28 21:32:47.426 INFO [E:7 T:1720] - 脚本执行结束, 移除通话状态监听
2020-07-28 21:32:47.429 DEBUG [E:7 T:1720] - 当前启用状态:true
2020-07-28 21:32:47.430 DEBUG [E:7 T:1720] - 移除phoneStateBroadcastReceiver
2020-07-28 21:32:47.460 INFO [E:7 T:1720] - 脚本执行结束, 释放图片资源
2020-07-28 21:32:47.463 DEBUG [E:7 T:1720] - 释放图片,总数:18
2020-07-28 21:32:47.477 DEBUG [E:7 T:1720] - 同步释放所有图片,耗时13
2020-07-28 21:32:47.485 DEBUG [E:7 T:1720] - 获取运行中任务信息:{"source":"/storage/emulated/0/脚本/Ant-Forest-master/main.js","engineId":7,"timeout":1595944056085} 超时剩余时间:889秒
2020-07-28 21:32:47.487 DEBUG [E:7 T:1720] - 准备移除运行中任务
2020-07-28 21:32:47.514 DEBUG [E:7 T:1720] - 队列小于等于1 不需要去重:[]
2020-07-28 21:32:47.524 DEBUG [E:7 T:1720] - 无任务等待中
2020-07-28 21:32:47.766 DEBUG [E:8 T:1770] - 异常终止的重启任务已存在: [{"mAction":"org.autojs.autojs.action.startup","mLocal":true,"mScriptPath":"/storage/emulated/0/脚本/Ant-Forest-master/lib/prototype/CrashCatcher.js","mId":2}]
2020-07-28 21:32:47.865 DEBUG [E:8 T:1770] - 添加运行状态监听器,结束时释放通话状态监听
2020-07-28 21:32:47.948 DEBUG [E:8 T:1770] - 当前启用状态:true
2020-07-28 21:32:47.951 LOG [E:8 T:1770] - ======加入任务队列,并关闭重复运行的脚本=======
2020-07-28 21:32:47.960 DEBUG [E:8 T:1770] - 队列小于等于1 不需要去重:[]
2020-07-28 21:32:47.980 DEBUG [E:8 T:1770] - 当前无任务等待,直接执行:{"source":"/storage/emulated/0/脚本/Ant-Forest-master/main.js","engineId":8}
2020-07-28 21:32:47.992 DEBUG [E:8 T:1770] - 设置脚本状态为执行中
2020-07-28 21:32:48.3 DEBUG [E:8 T:1770] - 当前脚本信息 id:8 source:/storage/emulated/0/脚本/Ant-Forest-master/main.js 运行中脚本数量:1
2020-07-28 21:32:48.5 LOG [E:8 T:1770] - ======校验无障碍功能======
2020-07-28 21:32:48.14 DEBUG [E:8 T:1770] - 当前已启用无障碍功能的服务:org.autojs.autojs/com.stardust.autojs.core.accessibility.AccessibilityService
2020-07-28 21:32:48.15 LOG [E:8 T:1770] - ---前置校验完成;启动系统--->>>>
2020-07-28 21:32:48.17 LOG [E:8 T:1770] - 版本信息:v1.3.0.6.10.1 nodeId:bba683552c4179ad039364b6b9a2f003d3fd3c9f
2020-07-28 21:32:48.19 LOG [E:8 T:1770] - AutoJS version: 4.1.1 Alpha2
2020-07-28 21:32:48.21 LOG [E:8 T:1770] - device info: Xiaomi raphael 10
2020-07-28 21:32:48.22 LOG [E:8 T:1770] - 运行模式:多脚本调度运行 永不停止,重新激活时间:60 基于图像分析
2020-07-28 21:32:48.24 LOG [E:8 T:1770] - 设备分辨率:[1080, 2340]
2020-07-28 21:32:48.25 LOG [E:8 T:1770] - ======解锁并校验截图权限======
2020-07-28 21:32:48.27 LOG [E:8 T:1770] - 已解锁
2020-07-28 21:32:48.29 LOG [E:8 T:1770] - 不需要重新锁定屏幕
2020-07-28 21:32:48.31 LOG [E:8 T:1770] - 解锁成功
2020-07-28 21:32:48.244 DEBUG [E:8 T:1774] - 开始申请截图权限
2020-07-28 21:32:48.250 DEBUG [E:8 T:1774] - 已存储截图权限申请标记
2020-07-28 21:32:48.254 DEBUG [E:8 T:1774] - 已开启弹窗监测线程
2020-07-28 21:32:48.459 DEBUG [E:8 T:1776] - 截图权限申请结果: true
2020-07-28 21:32:48.678 LOG [E:8 T:1770] - 请求截屏权限成功
2020-07-28 21:32:49.147 DEBUG [E:8 T:1770] - 获取到的倒计时时间:null
2020-07-28 21:32:49.148 DEBUG [E:8 T:1770] - 当前启用状态:true
2020-07-28 21:32:49.149 DEBUG [E:8 T:1770] - 当前启用状态:true
2020-07-28 21:32:49.150 DEBUG [E:8 T:1770] - 注册phoneStateBroadcastReceiver
2020-07-28 21:32:49.153 DEBUG [E:8 T:1770] - 获取运行中任务信息:{"source":"/storage/emulated/0/脚本/Ant-Forest-master/main.js","engineId":8,"timeout":1595944067981} 超时剩余时间:899秒
2020-07-28 21:32:49.160 DEBUG [E:8 T:1770] - 当前有任务正在运行:{"source":"/storage/emulated/0/脚本/Ant-Forest-master/main.js","engineId":8,"timeout":1595944067981}
2020-07-28 21:32:49.161 DEBUG [E:8 T:1770] - 运行中脚本任务和当前任务相同,继续判断同源脚本是否正在运行
2020-07-28 21:32:49.162 DEBUG [E:8 T:1770] - 运行状态校验成功,执行后续功能
2020-07-28 21:32:49.164 LOG [E:8 T:1770] - 已解锁
2020-07-28 21:32:49.166 LOG [E:8 T:1770] - 不需要重新锁定屏幕
2020-07-28 21:32:49.168 DEBUG [E:8 T:1770] - 不再展示延迟对话框,capture-screen-error
2020-07-28 21:32:49.169 INFO [E:8 T:1781] - 即将收取能量,运行中可按音量上键关闭
2020-07-28 21:32:49.171 LOG [E:8 T:1770] - 日期:2020-07-28,启动时能量:134651g, 截止当前已收集:1552g, 已运行[87]次, 上轮收集:0g
2020-07-28 21:32:49.175 INFO [E:8 T:1770] - ========第88次运行========
2020-07-28 21:32:49.178 DEBUG [E:8 T:1770] - 展示悬浮窗内容:第 88 次运行, 累计已收集:1552g
2020-07-28 21:32:49.200 DEBUG [E:8 T:1770] - 展示悬浮窗完毕
2020-07-28 21:32:49.202 DEBUG [E:8 T:1770] - 准备打开package: com.eg.android.AlipayGphone
2020-07-28 21:32:49.656 WARN [E:8 T:1780] - 关闭脚本
2020-07-28 21:32:49.658 DEBUG [E:8 T:1780] - 撤销自动任务:{"mDelay":0,"mInterval":0,"mLoopTimes":1,"mMillis":1595943145363,"mScheduled":true,"mScriptPath":"/storage/emulated/0/脚本/Ant-Forest-master/main.js","mTimeFlag":0,"mId":1910}
2020-07-28 21:32:49.662 DEBUG [E:8 T:1780] - 获取运行中任务信息:{"source":"/storage/emulated/0/脚本/Ant-Forest-master/main.js","engineId":8,"timeout":1595944067981} 超时剩余时间:898秒
2020-07-28 21:32:49.663 DEBUG [E:8 T:1780] - 准备移除运行中任务
2020-07-28 21:32:49.687 DEBUG [E:8 T:1780] - 队列小于等于1 不需要去重:[]
2020-07-28 21:32:49.696 DEBUG [E:8 T:1780] - 无任务等待中
2020-07-28 21:32:49.707 DEBUG [E:8 T:1780] - 设置脚本状态为执行完毕
2020-07-28 21:32:49.710 DEBUG [E:8 T:1780] - 释放图片,总数:0
2020-07-28 21:32:49.741 INFO [E:8 T:1770] - 脚本执行结束, 移除通话状态监听
2020-07-28 21:32:49.745 DEBUG [E:8 T:1770] - 当前启用状态:true
2020-07-28 21:32:49.746 DEBUG [E:8 T:1770] - 移除phoneStateBroadcastReceiver
2020-07-28 21:32:49.750 INFO [E:8 T:1770] - 脚本执行结束, 释放图片资源
2020-07-28 21:32:49.755 WARN [E:8 T:1770] - 无任务在运行中,不可移除

添加华为/荣耀的解锁和锁屏功能

  1. 解锁,华为/荣耀的PIN输入控件是“com.android.systemui:id/fixedPinEntry”,加一个if else 判断一下即可;
  2. 锁屏这块,因为我的手机没有root权限,所以采用点击的方式实现的,具体操作:利用华为/荣耀自带的一键锁屏快捷方式(桌面位置长按可添加),然后获取到这个快捷方式的横纵坐标即可,主要是主要前后要sleep();
  3. 我的手机型号是荣耀20.

好友收取失败

手机:华为 mate20 X
系统:EMUI 10
Ant-Forest版本:v1.2.1.2
问题描述:在好友页,定位不了能量球,不能收取,停止不动。
开启了基于图像分析收取
error.log的日志:
[Extension Host] 11:32:01.960/V: 等待控件成功:好友排行榜 console.ts:137 [Extension Host] 11:32:01.960/V: 等待进入好友主页:响总 console.ts:137 [Extension Host] 11:32:03.600/V: timeout for finding 没有更多了 console.ts:137 [Extension Host] 11:32:03.602/V: 预加载线程进入循环体 console.ts:137 [Extension Host] 11:32:04.106/V: try to find one: 没有更多了 timeout: 2000ms console.ts:137 [Extension Host] 11:32:06.118/V: timeout for finding 没有更多了 console.ts:137 [Extension Host] 11:32:06.123/V: 预加载线程进入循环体 console.ts:137 [Extension Host] 11:32:06.630/V: try to find one: 没有更多了 timeout: 2000ms console.ts:137 [Extension Host] 11:32:08.643/V: timeout for finding 没有更多了 console.ts:137 [Extension Host] 11:32:08.650/V: 预加载线程进入循环体 console.ts:137 [Extension Host] 11:32:09.155/V: try to find one: 没有更多了 timeout: 2000ms console.ts:137 [Extension Host] 11:32:10.118/E: 等待控件[好友首页]失败, 查找内容:浇水|发消息 console.ts:137 [Extension Host] 11:32:10.120/V: 未能进入主页,尝试再次进入 count:1 console.ts:137 [Extension Host] 11:32:11.169/V: timeout for finding 没有更多了 console.ts:137 [Extension Host] 11:32:11.173/V: 预加载线程进入循环体 console.ts:137 [Extension Host] 11:32:11.681/V: try to find one: 没有更多了 timeout: 2000ms console.ts:137 [Extension Host] 11:32:13.689/V: timeout for finding 没有更多了 console.ts:137 [Extension Host] 11:32:13.695/V: 预加载线程进入循环体 console.ts:137 [Extension Host] 11:32:14.202/V: try to find one: 没有更多了 timeout: 2000ms console.ts:137 [Extension Host] 11:32:16.212/V: timeout for finding 没有更多了 console.ts:137 [Extension Host] 11:32:16.224/V: 预加载线程进入循环体 console.ts:137 [Extension Host] 11:32:16.731/V: try to find one: 没有更多了 timeout: 2000ms console.ts:137 [Extension Host] 11:32:18.756/V: timeout for finding 没有更多了 console.ts:137 [Extension Host] 11:32:18.771/V: 预加载线程进入循环体 console.ts:137 [Extension Host] 11:32:19.278/V: try to find one: 没有更多了 timeout: 2000ms

判断列表是否到底报错

判断列表是否到底会报错,具体错误信息如下,可以正常运行到结束,但是会卡一会

2020-05-16 13:00:05.260 DEBUG [E:6 T:2080] - timeout for finding 没有更多了
2020-05-16 13:00:05.268 ERROR [E:6 T:2080] - java.lang.IllegalMonitorStateException: null

java.lang.IllegalMonitorStateException
	at java.util.concurrent.locks.ReentrantLock$Sync.tryRelease(ReentrantLock.java:156)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer.release(AbstractQueuedSynchronizer.java:1291)
	at java.util.concurrent.locks.ReentrantLock.unlock(ReentrantLock.java:466)
	at java.lang.reflect.Method.invoke(Native Method)
	at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:126)
	at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:225)
	at org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:1479)
	at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:815)
	at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:109)
	at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:399)
	at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3452)
	at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:107)
	at org.mozilla.javascript.InterfaceAdapter.invokeImpl(InterfaceAdapter.java:137)
	at org.mozilla.javascript.VMBridge_custom$InterfaceAdapterWrapper.invokeImpl(VMBridge_custom.java:149)
	at org.mozilla.javascript.VMBridge_custom$InterfaceAdapterWrapper.lambda$invoke$0(VMBridge_custom.java:131)
	at org.mozilla.javascript.-$$Lambda$VMBridge_custom$InterfaceAdapterWrapper$XK1hqYOz19X_TRE0jcwZie74Ua4.run(Unknown Source:13)
	at org.mozilla.javascript.VMBridge_custom$InterfaceAdapterWrapper.call(VMBridge_custom.java:140)
	at org.mozilla.javascript.VMBridge_custom$InterfaceAdapterWrapper.invoke(VMBridge_custom.java:132)
	at org.mozilla.javascript.VMBridge_custom.lambda$newInterfaceProxy$0(VMBridge_custom.java:65)
	at org.mozilla.javascript.-$$Lambda$VMBridge_custom$YVyz9uh0Rns0jQ5QbSHESBMT8e0.invoke(Unknown Source:15)
	at java.lang.reflect.Proxy.invoke(Proxy.java:1006)
	at $Proxy11.run(Unknown Source)
	at android.os.Handler.handleCallback(Handler.java:883)
	at android.os.Handler.dispatchMessage(Handler.java:100)
	at android.os.Looper.loop(Looper.java:214)
	at com.stardust.autojs.core.looper.TimerThread.run(TimerThread.java:46)
2020-05-16 13:00:05.275 DEBUG [E:6 T:2080] - 预加载线程进入循环体

浇水新版本导致的bug

当有七个球(六个水球,一个浇水球)的时候,会反复进入这个好友收取,死循环

FriendListScanner.js 144行

// 当数量大于等于6且帮助收取后,重新进入
    if (helped && length >= 6) {
      return true
    }

应该是上面这个地方需要优化

启动报错

启动main
10:27:51.883/E: TypeError: Cannot find function loadDex in object com.stardust.autojs.runtime.ScriptRuntime@8af2e95. (

#9)
at script(:9)

启动config
10:28:51.135/E: ReferenceError: "activity" is not defined. (ui.js#12)
at script(ui.js:12)
at script(ui.js:393)
at script(:1113)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.