Giter Club home page Giter Club logo

unify-sign's Introduction

GitHub forks GitHub stars GitHub issues Page Views Count

简介

  • 聚合签到,一次性执行多个APP的签到,薅羊毛等等都不在话下,更多APP逐渐完善中
  • 目前已实现的功能如下:
    • 京东京豆签到
    • 蚂蚁积分签到
    • 全家-Fa米家 APP签到
    • 米哈游-原神签到
    • 淘金币签到
    • 叮咚签到
    • 微博积分签到
    • 芭芭农场签到
    • 手机淘宝现金签到
    • 柚番短视频 自动刷泡泡
  • 部分APP会检测无障碍,且部分签到使用到了内置OCR功能,因此需要安装 特殊版本的AutoJS,并关闭原版AutoJS的无障碍权限;
  • 因为AutoJSPro的存在无障碍限制,且Pro最新政策会进行代码审查,因此不会受支持,请勿使用Pro;
  • 上面链接中的版本不一定最新的,可以去蓝奏云下载困鱼:https://wwxs.lanzouq.com/b042le51i 密码:b034

使用

  • 安装特殊版本的AutoJS之后把整个脚本项目放进 "/sdcard/脚本/" 文件夹下面。打开软件后下拉刷新,然后运行项目或者 main.js 即可。
  • 因为部分应用会检测集中某个时间点的签到,检测为异常行为。因此脚本实现的逻辑为每天第一次运行时创建随机的执行计划。所以需要对 main.js 设置每天0点的定时任务,用以创建当天的执行计划。
  • 运行 可视化配置.js 进入 签到设置,勾选需要运行的签到任务。对于任务的执行时间设置,选中任务项右划调出按钮 设置执行时间 点击进入设置界面,每个任务可以单独设置执行时间或者直接按分组执行,分组需要在 管理执行分组 中增加和配置
  • 对于需要配置图像的任务,在任务项左滑调出 更多设置 进入设置页面配置相应的内容,否则无法正常执行,例如 叮咚签到 需要配置各个图像节点
  • 执行计划生成完成后可以进入 签到设置点击 查看执行计划 进行查看和管理,也可以重新生成执行计划
  • 可以在配置界面中自行创建执行分组,将不同任务分在不同的组以实现某一时间点的批量执行。
    • 比如叮咚为三个子任务:积分、鱼塘和果园:
    • 将积分签到绑定到默认分组
    • 为鱼塘和果园创建三个分组,随机时间段设置:1:7-9点、2:10-12点、3:16-18点,然后绑定签到任务和对应分组。这样鱼塘和果园就能一天三次完整的领取早中晚的奖励。
  • 签到设置 中,可以对单个签到手动执行,手动执行的不会记录到执行计划中

其他的脚本

推广

  • 开发不易,请让我薅点羊毛

     下载【抖音极速版】,填我邀请码【8720491405】,新用户当天必得现金红包,可直接提现
    

界面预览

  • 签到设置: 签到设置
  • 执行时间设置: 执行时间设置
  • 执行计划管理: 执行计划管理

开发自定义签到脚本

定义任务

  • 定义任务编号及名称,创建文件 extends/CustomConfig.js 可以参考 extends/CustomConfig-demo.js

    module.exports = {
      // 配置自定义的签到任务定义信息
      supported_signs: [
        // ...
        {
          name: '叮咚签到',         // 定义任务名称
          taskCode: 'DingDong',    // 定义任务编号,需要保证唯一
          script: 'DingDong.js',   // 脚本文件名称 需要放在core/目录下
          enabled: true,           // 是否启用
          subTasks: [              // 如果有子任务,可以增加 subTasks 无子任务的不需要增加
            {
              taskCode: 'creditSign',  // 定义子任务编号
              taskName: '积分签到',     // 子任务名称
              enabled: true,           // 是否启用子任务
            },
            // ...
          ]
        },
        // ...
      ]
    }
  • 增加自定义签到任务的配置,创建文件extends/CustomSignConfig.js 可以参考 extends/CustomSignConfig-demo.js

    module.exports = function (binder) {
      // 扩展配置
      /**
       * param1: 指定自定义配置的前缀 需要保持唯一
       * param2: 指定自定义配置的初始化值 仅仅保存图片信息时传递空对象即可
       * param3: 指定自定义图像配置的字段列表
       */
      binder.bindCustomSignConfig('bb_farm', {
        click_point: {
          x: 100,
          y: 100,
        }
      }, [
        'collect_btn_alipay', 'entry_check_alipay', 'task_btn_alipay',
        'collect_btn_taobao', 'entry_check_taobao', 'task_btn_taobao'
      ])
    }
    
    // 在签到代码中调用时参考如下 使用config.{自定义配置前缀}_config来获取配置参数
    let { config } = require('../config.js')(runtime, global)
    console.log('自定义签到配置:', JSON.stringify(config.bb_farm_config.click_point))
  • 任务配置完成后将在第一次运行时自动创建数据库配置,后续再在可视化配置中配置每天的执行时间

编写签到脚本

  • 增加自定义签到逻辑,需要独立创建一个自定义签到用的js文件放到 core/ 文件夹下,文件名称需要和上面的 script: 相匹配,内容参考如下

      // 引入常用工具方法
      let { config } = require('../config.js')(runtime, global)
      let singletonRequire = require('../lib/SingletonRequirer.js')(runtime, global)
      let FloatyInstance = singletonRequire('FloatyUtil')
      let widgetUtils = singletonRequire('WidgetUtils')
      let automator = singletonRequire('Automator')
      let commonFunctions = singletonRequire('CommonFunction')
      let localOcrUtil = require('../lib/LocalOcrUtil.js')
    
      // 引入基本类
      let BaseSignRunner = require('./BaseSignRunner.js')
      // 定义自己的签到
      function SignRunner () {
        // 调用BaseSignRunner.call(this) 实现继承
        BaseSignRunner.call(this)
    
        // 编写自己的签到执行逻辑
        this.exec = function() {
          // 1.对于无子任务的
          // ...
          // 这里编写签到逻辑,具体可以参考其他的签到文件
          // ...
          // 直接调用,标记当前任务已完成
          this.setExecuted()
    
          // 2.对于有子任务的需要先判断子任务是否已完成 子任务签到建议封装成单独的方法 具体参考DingDong.js
          if (!this.isSubTaskExecuted({ taskCode: '子任务编号' })) {
            // ...
            // 执行子任务的签到逻辑
            // ...
            // 标记子任务已完成
            this.setSubTaskExecuted({ taskCode: '子任务编号' })
          }
    
        }
      }
      // 补充继承的模板代码
      SignRunner.prototype = Object.create(BaseSignRunner.prototype)
      SignRunner.prototype.constructor = SignRunner
      // 将自定义签到代码export出去
      module.exports = new SignRunner()
  • 测试签到代码,修改 test/测试签到功能.js 中的内容,替换如下内容为自己编写的签到js,例如 MySignTask.js

      // 替换签到js
      let signRunner = require('../core/MySignTask.js')
      signRunner.setName('我的签到代码').exec()
  • 将所有代码复制到手机,然后运行 test/测试签到功能.js 即可对自己编写的签到代码进行单独的测试

配置任务执行时间

  • 运行 可视化配置.js 进入签到配置,找到自己添加的任务,左滑调出菜单按钮 设置执行时间 点击后进入配置界面,设置每日执行时间即可
  • 然后回到上一页,点击 查看执行计划 进入后点击 生成执行计划 即可自动生成执行计划数据

请开发者喝咖啡

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

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

    alipay_qrcode wechat_qrcode

  • 支付宝扫码领红包,你拿红包我也有份,当然我只有几分。

  • 扫码领红包

unify-sign's People

Contributors

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

unify-sign's Issues

自己写了什么值得买app签到模块运行不起来,求大佬有空帮忙看下

大佬求带
我基于淘金币签到代码Taobao-Coin.js改了一个什么值得买app的签到代码,由于我比较小白,代码有点问题,大佬有空的话帮忙解惑。
smzdm.txt
ps其实如果不把文件里的BaseSignRunner换成smzdm,不把SignRunner换成smzdmRunner的话,是能正常运行的,就是执行完会误判执行失败,我也搞不清为什么。

也在config.js里相应位置加入了此签到的开关,但点击位置有点错乱,也搞不明白为啥。ps放在最后一个位置好像没问题,但我为了测试放到了中间。需要随之修改哪里才能让点击位置对应?
name: '全家签到', script: 'Fami.js', enabled: true }, { name: '值得买签到', script: 'smzdm.js', enabled: true }, { name: '京东签到', script: 'JingDongBeans.js', enabled: true

新增自定义签到后,在可视化配置中找不到

按照说明仿照demo文件的形式
在extends 下新建了MyTaskConfig.js 和MyTaskSignConfig.js
在core 下新建了MyTask.js
使用test/测试签到功能.js 运行也成功了,但是在可视化配置中找不到我新增的签到任务
无法加入到任务序列中,还请大佬指导~

如何高效开发/调试【签到】功能

在使用 vscode 中的 aaroncheng.auto-js-vsce-fixed 插件进行开发时,每次运行都需要手动将文件复制到 core 文件夹下。由于插件的保存到设备功能仅能将文件上传到 /scripts 文件夹下,这一过程显得相对繁琐。因此,我想请教一下,是否有更便捷的方式来开发和调试扩展签到功能?希望能简化操作流程,提升开发效率。期待您的回复和指导,谢谢!

【调查】关于淘宝现金签到

做个小调查,有没有正在使用这个项目并启用了淘宝现金签到的,你们最近的签到奖励有没有发生变化,我这边才发现倒计时的从100降低到80,逛一逛任务也减少到了一个。

设置定时任务总是自动延迟?

昨天开始设定了早上7:33的自动任务,结果两天都没执行成功,今天的log如下:

2021-08-27 07:33:02.385 DEBUG [E:9 T:33781] - 随机延迟835分钟后启动
2021-08-27 07:33:02.387 DEBUG [E:9 T:33781] - 撤销自动任务:{"mDelay":0,"mInterval":0,"mLoopTimes":1,"mMillis":1629965221560,"mScheduled":true,"mScriptPath":"/storage/emulated/0/脚本/Unify-Sign-master/main.js","mTimeFlag":0,"mId":9743}
2021-08-27 07:33:02.389 INFO [E:9 T:33781] - 预订[835]分钟后的任务,时间:2021-08-27 21:28:02(1630070882388)
2021-08-27 07:33:02.473 DEBUG [E:9 T:33781] - 定时任务预定成功: 9805
2021-08-27 07:33:02.895 DEBUG [E:9 T:33786] - 脚本已经中止执行,执行生命周期回调
2021-08-27 07:33:02.906 DEBUG [E:9 T:33787] - lifecycleDeamon线程池关闭:true
2021-08-27 08:44:24.706 DEBUG [E:18 T:34305] - 脚本已经中止执行,执行生命周期回调
2021-08-27 08:44:24.713 DEBUG [E:18 T:34316] - lifecycleDeamon线程池关闭:true

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.