源码链接:https://pan.baidu.com/s/1tK3CbTEl4_ZWqa-2vDxl2w 提取码:kgzz 
APK下载链接:https://wwe.lanzous.com/ioZxshqzzq

薅羊毛也好撸羊毛也摆反正就是自动阅读亚丁号云控的第十六次更新:

1、陀螺世界增加看AD次数
2、在悬浮窗第一个按钮上增加了截图功能,截图文件保存在亚丁号下面、每次挂机都需要打开截屏功能(后面的业务会用到)
3、增加感谢菜单
4、抖音短视频改成抖音
5、修改映客直播极速版BUG,保刷BUG和时间判断BUG
6、修正2345浏览器进入视频的方式增加清理缓存功能
7、优化快手签到和快手看AD功能,增加快手保刷功能
8、调整控制台位置任务和自动刷,基本处于手机屏幕中间位置
9、修改快音部分机型不能刷视频的问题,优化快要保刷功能
10、兼容修正58同城签到和看小视频赚积分的功能
11、增加任务页面未安装app和已经安装app颜色区分
12、 在滑动屏幕的方法增加device.keepScreenDim();//保持屏幕常亮
13、增加拍美关闭方法,修正拍美进入视频的方法
14、增加猫扑运动至视频页

基本就是修正问题一类的工作,最主要的就是增加了感谢内容和截图内容。

在三无控件面前AutoJs真的很无助。截图页面

为了大家使用截图方便就在悬浮按钮上增加了截图功能:

function screenShotImage() {threads.start(function () {let name = getTime();//保存名字//importClass(android.graphics.Color);importClass(android.graphics.PorterDuff);importClass(android.graphics.PorterDuffXfermode);importClass(android.graphics.Rect);importClass(android.graphics.RectF);setInterval(() => { }, 100);if (!requestScreenCapture()) {toast("请求截图失败");exit();};var IMG = captureScreen();var MainImg = images.copy(IMG);var Width = deviceWidth(),Height = deviceHeight();var region = new Rect(Width / 3, Height / 3, Width / 3 * 2, Height / 3 * 2);var window = floaty.rawWindow(<frame><canvas id="canvas" w="*" h="*" /><horizontal w="auto" h="auto" alpha="0.5" layout_gravity="top|center_horizontal"><button id="ok" text="确定" /><button id="cancel" text="退出" /></horizontal></frame>);window.setSize(-1, -1);var RE_rect;window.ok.click(function (v) {let txt = v.getText();RE_rect = to_newRect(region);let x1 = RE_rect.left,y1 = RE_rect.top,x2 = RE_rect.right,y2 = RE_rect.bottom;let w = x2 - x1,h = y2 - y1;let cx = Math.floor(x1 + w / 2),cy = Math.floor(y1 + h / 2);let obj = {region: [x1, y1, w, h],p: {x: cx,y: cy},};let screenShotImagePath=rootPath + softPath + screenshotPathlet image = images.clip(MainImg, x1, y1, w, h);images.save(image, screenShotImagePath + name + ".jpg");media.scanFile(screenShotImagePath + name + ".jpg");//let str = JSON.stringify(obj);//setClip(str);//log(str);ui.run(() => {v.setText("已保存截图");});setTimeout(() => {ui.run(() => {v.setText(txt);});}, 2000);});window.cancel.click(function () {exit();});window.canvas.post(function () {let w = window.canvas.getWidth();let h = window.canvas.getHeight();//region=new Rect(w/3,h/3,w/3*2,h/3*2);});//黑色画笔。var paint = new Paint;var paint1 = new Paint;var paint2 = new Paint;//paint1.setTextSize(75);//paint.setTextAlign(Paint.Align.CENTER);paint.setStrokeWidth(5);paint1.setStrokeWidth(5);paint.setStyle(Paint.Style.STROKE);paint1.setStyle(Paint.Style.STROKE);paint2.setStyle(Paint.Style.FILL);//paint.setARGB(255, 0, 0, 0);paint.setColor(colors.RED);paint1.setColor(colors.GREEN);paint2.setColor(colors.GREEN);paint2.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_OUT));//paint.setTextSize(75);var radius = 50;window.canvas.on("draw", function (canvas) {//canvas.drawColor(Color.TRANSPARENT, PorterDuff.Mode.CLEAR);canvas.drawImage(MainImg, 0, 0, paint);//canvas.drawARGB(127, 0, 0, 0);let w = canvas.getWidth();let h = canvas.getHeight();//canvas.drawRect(region, paint2);canvas.drawRect(region, paint);canvas.drawCircle(region.left, region.top, radius, paint1);canvas.drawCircle(region.left, region.bottom, radius, paint1);canvas.drawCircle(region.right, region.top, radius, paint1);canvas.drawCircle(region.right, region.bottom, radius, paint1);canvas.drawRect(0, 0, w, h, paint);});var touchControlPoint;var touchRegion;var touchX = 0,touchY = 0;var oldRegion;window.canvas.setOnTouchListener(new android.view.View.OnTouchListener(function (view, event) {try {let W = view.getWidth();let H = view.getHeight();let PC = event.getPointerCount();switch (event.getActionMasked()) {case event.ACTION_MOVE:try {for (let i = 0; i < PC; i++) {let id = event.getPointerId(i);let x = event.getX(i);let y = event.getY(i);if (touchControlPoint) {setRectXY(region, touchControlPoint, x, y);} else {x = sinon(x, touchRegion.left, touchRegion.right);y = sinon(y, touchRegion.top, touchRegion.bottom);let tx = x - touchX,ty = y - touchY;newRegion = new Rect(oldRegion);newRegion.offset(tx, ty);//if(touchRegion.contains(newRegion)){region = newRegion;//};};//break;};} catch (e) {throw "MOVE " + e;};break;case event.ACTION_CANCEL:toast("触摸被系统拦截\n可能是三指截屏等功能");break;case event.ACTION_OUTSIDE:log("OUTSIDE");break;default:let I = event.getActionIndex();let ID = event.getPointerId(I);let X = event.getX(I);let Y = event.getY(I);switch (event.getActionMasked()) {case event.ACTION_DOWN:try {//log("down");touchRegion = new Rect(X - region.left, Y - region.top, W + (X - region.right), H + (Y - region.bottom));let resAry = isRectXY(region, X, Y, radius);//log(resAry);if (resAry) {Width = deviceWidth();Height = deviceHeight();touchControlPoint = resAry;} else {oldRegion = new Rect(region);touchX = X;touchY = Y;};} catch (e) {throw "DOWN " + e;};break;case event.ACTION_UP://最后一个手指抬起。//log("up");if (touchControlPoint) {touchControlPoint = undefined;} else {x = sinon(X, touchRegion.left, touchRegion.right);y = sinon(Y, touchRegion.top, touchRegion.bottom);let tx = x - touchX,ty = y - touchY;newRegion = new Rect(oldRegion);newRegion.offset(tx, ty);//if(touchRegion.contains(newRegion)){region = newRegion;//};};break;case event.ACTION_POINTER_DOWN:break;case event.ACTION_POINTER_UP:break;};};} catch (e) {throw "imgTouch: " + e;};if (touchControlPoint) {return true;};return true; //ASX.touchListener(view, event);}));function to_newRect(rect) {let x1 = rect.left < rect.right ? rect.left : rect.right,y1 = rect.top < rect.bottom ? rect.top : rect.bottom,x2 = rect.right >= rect.left ? rect.right : rect.left,y2 = rect.bottom >= rect.top ? rect.bottom : rect.top;return new Rect(x1, y1, x2, y2);};function setRectXY(rect, idAry, x, y) {x = sinon(Math.floor(x - idAry[1]), 0, Width);y = sinon(Math.floor(y - idAry[2]), 0, Height);//log(x,y);switch (idAry[0]) {case 0:if (rect.right != x && rect.bottom != y) {rect.left = x;rect.top = y;};break;case 1:if (rect.left != x && rect.bottom != y) {rect.right = x;rect.top = y;};break;case 2:if (rect.right != x && rect.top != y) {rect.left = x;rect.bottom = y;};break;case 3:if (rect.left != x && rect.top != y) {rect.right = x;rect.bottom = y;};break;};};function sinon(a, b, c) {return (a >= b && a < c) ? a : (a >= b ? c : b);};function isRectXY(rect, x, y, r) {let x1 = x - rect.left,y1 = y - rect.top,x2 = x - rect.right,y2 = y - rect.bottom;if (weiyi([x1, y1]) <= r) {return [0, Math.floor(x1), Math.floor(y1)];} else if (weiyi([x2, y1]) <= r) {return [1, Math.floor(x2), Math.floor(y1)];} else if (weiyi([x1, y2]) <= r) {return [2, Math.floor(x1), Math.floor(y2)];} else if (weiyi([x2, y2]) <= r) {return [3, Math.floor(x2), Math.floor(y2)];};return null;};function getOrientation() {return context.resources.configuration.orientation == 2 ?"landspace" : "portrait"}function deviceWidth() {let wm = context.getSystemService('window');let display = wm.getDefaultDisplay();let metrics = new android.util.DisplayMetrics();display.getRealMetrics(metrics);//log("width = ", metrics.widthPixels)return metrics.widthPixels;}function deviceHeight() {let wm = context.getSystemService('window');let display = wm.getDefaultDisplay();let metrics = new android.util.DisplayMetrics();display.getRealMetrics(metrics);//log("height = ", metrics.heightPixels);return metrics.heightPixels;}function getTimeString() {return new java.text.SimpleDateFormat("yyyy_MM_dd_HH:mm:ss").format(new Date());};function 反色(color) {return (-1 - colors.argb(0, colors.red(color), colors.green(color), colors.blue(color)));};function getsd(s, ary) {//将数组内所有值的平方和开方等于svar sum = weiyi(ary);var S = (s / sum) || 0;for (var i = 0; i < ary.length; i++) {ary[i] = ary[i] * S;};return ary;};function weiyi(ary) {//数组所有值平方和开方var sum = 0;for (var i = 0; i < ary.length; i++) {sum += Math.pow(ary[i], 2);};return Math.sqrt(sum);};function kdfx(Y) {//数学二维坐标系xy,输入角度。var x = Math.cos(Y % 360 / 360 * 2 * Math.PI);var y = Math.sin(Y % 360 / 360 * 2 * Math.PI);return [x, y];};function ydfx(ary) {//数学二维坐标系xy,返回角度。var ary = getsd(1, ary);var x = ary[0],y = ary[1];var Y = Math.asin(y) / (2 * Math.PI) * 360;if (x < 0) {Y = 180 - Y;};return Y;};function windowGXY(x, y, k) {x = (k[0][0] < x && x < k[1][0]) ? x : (k[0][0] < x ? k[1][0] : k[0][0]);y = (k[0][1] < y && y < k[1][1]) ? y : (k[0][1] < y ? k[1][1] : k[0][1]);return {x: x,y: y};};function deepCopy(obj) {if (typeof obj != 'object') {return obj;}var newobj = {};for (var attr in obj) {newobj[attr] = deepCopy(obj[attr]);}return newobj;};function ABCtoast(maxCount) {this.ary = [];this.thread;this.ji = 0;this.getTimeString = function () {//https://www.jianshu.com/p/cf2f1f26dd0areturn new java.text.SimpleDateFormat("mm:ss:SSS:/").format(new Date());};this.addSome = (T) => {this.ary.push({time: this.getTimeString(),text: T});if (this.ary.length > maxCount) {this.ary = this.ary.slice(-maxCount);};if (this.thread ? !this.thread.isAlive() : true) { //线程没有运行。this.thread = threads.start(new java.lang.Runnable(() => {sleep(500);do {do {this.ji += 0.2;sleep(50);} while (this.ji <= 1);this.ji = 0;this.ary.shift();} while (this.ary.length);}));};}};});
}

需要的就拿去用吧

另外我在做66的时候也做了个手势截屏和点击任务栏截屏功能,分享给大家:

function screenShot() {let deviceType = device.brand.toLowerCase()if (deviceType == "huawei") {//表示从位置(500, 10)滑动到位置(500, 1000), 持续两秒swipe(500, 10, 500, 1000, 600);sleep(500)swipe(500, 10, 500, 1000, 500);clickControl(text("截屏"))} else {/*** 同时模拟三个手势:* 从(300, 400)到(300, 1400)* 从(600, 400)到(600, 1400)* 从(900, 400)到(900, 1400)* 每一个的时长都为350毫秒*/gestures([350, [300, 400], [300, 1400]],[350, [600, 400], [600, 1400]],[350, [900, 400], [900, 1400]])}
}

最后还是感谢大家谢谢支持~

源码链接:https://pan.baidu.com/s/1tK3CbTEl4_ZWqa-2vDxl2w 提取码:kgzz 
APK下载链接:https://wwe.lanzous.com/ioZxshqzzq

薅羊毛专业版第十六次更新相关推荐

  1. 薅羊毛专业版第十五次更新

    源码链接:https://pan.baidu.com/s/1tK3CbTEl4_ZWqa-2vDxl2w 提取码:kgzz  APK下载链接:https://wwe.lanzous.com/ioZxs ...

  2. 薅羊毛第三十八次更新

    ​ 老规矩APK地址:薅羊毛专业版_v1.0.142.apk - 蓝奏云 我的博客地址:亚丁号 源代码地址:薅羊毛专业版.rar - 蓝奏云 更新内容: 1.修正爱奇艺视频关闭ad的BUG 2.修正悬 ...

  3. 基于AutoJs实现的薅羊毛专业版又一次大更新

    链接:https://pan.baidu.com/s/16NJLMBEb4ufHQQFDLoiaMw 提取码:ivk0 郑重声明薅羊毛专业版大概2周我会更新一次大版本. 介绍就不写了之前的文章已经写过 ...

  4. 基于AutoJs实现的薅羊毛专业版第五次大更新

    源代码和Apk链接:https://pan.baidu.com/s/1uRifcZLS-nZt5EOKjVfyqA 提取码:bnnw 郑重声明薅羊毛专业版大概2周我会更新一次大版本. 原贴:https ...

  5. 薅羊毛专业版第三十六次更新

    APK下载地址:薅羊毛专业版_v1.0.140.apk - 蓝奏云 源代码下载地址:薅羊毛专业版最新源代码.rar - 蓝奏云 本次主要更新是修正无障碍BUG兼容安卓11同时也增加了注册 协议功能,默 ...

  6. 自动阅读专业版第八次更新---原薅羊毛专业版

    链接: https://pan.baidu.com/s/1rlYWqhZbj-LGAEl5aiEFYg  密码: u46l 原贴:https://blog.csdn.net/zy0412326/art ...

  7. 自动阅读专业版第十一次更新---原薅羊毛专业版

    链接:https://pan.baidu.com/s/1Wsyz-yjxmZTbQpSC3Xd-mQ  提取码:aj6p 这次没有太多大的更新就是对现有的app做点优化保刷保活清缓等功能,之前都介绍过 ...

  8. 薅羊毛时间版第十一次更新

    老规矩APK地址:亚丁号自动阅读_v0.0.51.apk - 蓝奏云 我的博客地址:亚丁号 源代码地址:亚丁号---文件下载 更新内容: 1.将薅羊毛时间版更改回亚丁号自动阅读(专业版) 2.更改付费 ...

  9. 自动阅读专业版---原薅羊毛专业版

    链接: https://pan.baidu.com/s/1rlYWqhZbj-LGAEl5aiEFYg  密码: u46l 原贴:https://blog.csdn.net/zy0412326/art ...

最新文章

  1. 车辆检测--A Closer Look at Faster R-CNN for Vehicle Detection
  2. NHibernate one-to-one
  3. 张家口zec挖矿软件哪里下载_AMTO软件下载-AMTO挖矿官网版v1.1
  4. Log4Net 最简配置
  5. 网络通信协议-TCP/IP模型实战
  6. php如何打开图片的权限,php如何控制用户对图片的访问 PHP禁止图片盗链 php技巧...
  7. 小汤学编程之JAVA基础day15——枚举、注解和Properties
  8. arraylist转int数组_深度剖析Java集合之ArrayList
  9. 卷积神经网络-加载数据集
  10. RabbitMQ消息确认机制之Confirm模式总结
  11. 使用邻接矩阵实现商品SKU表单联动
  12. CodeLite 16.0可以编译通过,但是在编辑器界面会显示找不到标准库头文件
  13. linux php安装xsl扩展,11.32 php扩展模块安装
  14. educoder锁存器和触发器设计之主从D触发器设计+门控D锁存器设计
  15. MIT协议是干什么的?底层原理是什么?
  16. 返回上一页面刷新与不刷新的方法
  17. bzoj 1539: [POI2005]Dwu-Double-row
  18. 计算机网络:P4.1-网络层(上)
  19. 如何解决工业缺陷检测小样本问题
  20. 3ds max 效果图设计与制作-VRay物理相机参数详解

热门文章

  1. 一些世界名著的开场白和结束语
  2. 发布!第五届“强网”拟态防御国际精英挑战赛精彩抢先看!
  3. 快速排序详解及不排序求中位数o(n)算法
  4. MIUI中无法获取所有短信的坑
  5. 2-1 李宏毅2021春季机器学习教程-第二节机器学习任务攻略
  6. LCD 显示问题分析
  7. 一键捕获,自由分享:开源截图工具盘点
  8. FastJson 时间相关装换 默认为东8区的方法 有案例工程
  9. Excel 2010 VBA 入门 053 DateDiff函数
  10. datagridview 获取选中行的索引