关于程序员:薅羊毛软件抢福袋源码分享

14次阅读

共计 2632 个字符,预计需要花费 7 分钟才能阅读完成。

概述

这是一个系列分享,我会逐渐凋谢更多的分享。
基于 AutoJs 实现的薅羊毛 App 专业版源码大分享。我分享的源码,全是正在商业应用的性能源码。源码的品质大家能够本人均衡。

抢福袋(抖音、抖音极速、抖音火山)全副兼容

性能笼罩所有版本,明天分享根底版本,不蕴含智能版,下期分享智能抢福袋,智能避免风控。

界面


ui.layout(
    <vertical padding="16" id="parent">
        <TextView text="抢福袋" gravity="center" textSize="24sp" />
        <Switch id="autoService" text="无障碍服务" checked="{{auto.service != null}}" padding="8 8 8 8" textSize="15sp" />
        <horizontal>
            <TextView w="auto"  text="只查看" />
            <input w="auto" id="maxWait" minWidth="50" inputType="number" text="180" />
            <TextView w="auto" text="秒以内" />
        </horizontal>
        <horizontal>
            <TextView w="auto"  text="中奖概率大于"/>
            <input w="auto" id="gl" minWidth="50" inputType="number" text="0.1" />
        </horizontal>

        <horizontal>
            <button w="*" id="openapp" text="开始工作" />
        </horizontal>
    </vertical>
);

依据以后概率、预估最终概率

qfd.checkYgl = function (time) {waitTime(3)
    var txtwg = textMatches(/^[1-9][0-9]*.*[1-9][0-9]* 人 /).findOnce();
    if (txtwg == null) {return false;}
    var nu = textMatches(/^\d+$/).className("android.view.View").findOnce();
    if (nu == null) {return false;}
    if (!this.checkedfsp()) {var txt = txtwg.text();
        txt = txt.replace("钻石", "")
        txt = txt.replace("(", "")
        txt = txt.replace(")", "")
        txt = txt.replace("抖币:", "|")
        log(txt)
        var totaldb = parseInt(txt.split('|')[0])
        var total = parseInt(txt.split('|')[1])
        total = total == 0 ? 1 : total;
        var average = totaldb / total;
        var gl = total * time * 1.0 / (parseInt(nu.text()) * 600);
        ydb = average * gl
        log("能够取得" + average * gl + "抖币")
        var ms = average * gl > 1.0;
        if (!ms) {log("------- 亏本生意,放弃 ------")
        }
    } else {return true;}
    return ms;

}
qfd.qfd = function () {var mswg = textMatches(/^([0-1]{1}\d|2[0-3]):([0-5]\d)$/).find();
    var size = mswg.length
    if (size != 0) {
        var had=false;
        for (let index = size - 1; index >= 0; index--) {if(had){break;}
            had=false;
            const txtwg = mswg[index];
            var txt = txtwg.text();
            var time =timeToSec(txt);
            if(txtwg.parent()==null){continue;}
            if (qfd.ouTime(time)) {log("超出工夫范畴" + txt);
                continue;
            }
            txtwg.parent().parent().click();
            waitTime(3, "加载...")
            if (!text("福袋").exists()) {click(device.width * 0.1, device.height * 0.3);
                waitTime(0.5)
                
                continue;
            }
            had=true;
            // 检测是否满足福袋要求
            if (!qfd.checkYgl(time)) {click(device.width * 0.1, device.height * 0.3);
                waitTime(0.5)
                continue;
            }
            // 满足
            textStartsWith("一键参加").findOne().click();
            qfd.randomsend(time / 5);
            waitTime(time+2, "期待福袋");
            click(device.width * 0.1, device.height * 0.3);
            waitTime(3, "---")
            log(txt);
            break;
        }
    }
    nextVideo();
    waitTime(6);
}

抢福袋过程中 随机参加互动


qfd.sentMsg = function (msg) {waitTime(1, "随机发消息:" + msg);
    click(device.width * 0.1, device.height * 0.97)
    waitTime(1, "发送");
    var wg = className("android.widget.EditText").findOnce();
    if (wg != null) {wg.setText(msg);
    }
    waitTime(1, "发送");
    var wg2 = className("android.widget.Button").desc("发送").findOnce()
    if (wg2 != null) {wg2.click();
    }
    waitTime(1, "发送实现");
}

开源代码地址:
https://github.com/kkevsekk1/…
留神:本代码只兼容 autox.js 4.2.8 以上,auto.js 4.1 和 auto.pro 都不兼容哦,因为应用了最新的个性。

如果有趣味须要代码打包好的 apk 能够发问,(其实你本人打包也是几分钟的事件)

最初分享几张效果图

正文完
 0