autojs自动化手机脚本实现淘宝芭芭农场签到领肥料
更新内容
@_@常回来看看,可能会有bug修复和添加新功能
- v1.27 11.6更新:
- 支付宝现在首页上方的窗口加载很慢,对应修改了支付宝活动入口的进入判断。
- 如果领取模式为MODE=1(只领取支付宝),在领完支付宝之后会根据设置进行扁猫猫功能。
- 现在默认领取模式为MODE=1(只领取支付宝),并且扁猫猫功能默认开启了。主要是考虑到使用脚本领取淘宝也挣不到几个喵币,如果仍然有需求,请自行修改代码第13行和23行。
- 由于支付宝默认进去之后就打开任务界面,之前的脚本会漏掉领取钱袋子的操作,现在在每次支付宝领取结束后增加了领取钱袋子的操作。
1.开宗明义
(小白请看第四部分内容)
- 平台:Android
- 功能:双十一自动刷淘宝和支付宝的喵币
- 特色:
- 支付宝的喵币刷完后自动刷淘宝的喵币
- 增加了狂扁活动界面的猫,获得蚊子腿喵币的功能(默认开启,关闭方法为:把代码第13行的true改为false)
- 增加了程序运行时按下[音量下键]和[长按悬浮窗内文字]退出的功能,提供给想要主动退出的情况(尤其是狂扁猫猫的阶段,默认持续20s)。(也可以在Auto.js中的管理栏目下找到正在运行的脚本)
- 代码最开始提供了自定义的内容,可以根据自己的屏幕大小进行修改适配
- 依赖:Auto.js
- 注意:脚本开启前需要保证淘宝和支付宝未开启,或者处于淘宝和支付宝均处于首页,否则之后都会错误操作
脚本代码如下下载:https://wws.lanzous.com/i6opglvizaf 密码:添加微信公众号【泓源视野网络安全】发送【手机脚本】获得
下载后解压然后使用Auto.js的导入功能)
下载:https://wws.lanzous.com/id68hlviyrg 密码:e1o7
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 | /*---原载于https://www.byy3.com/960.html 仅供学习交流,下载后请于24小时内删除*/ /*--------版本v1.30根据个人情况修改以下内容----------*/ //长等待时间常量,用于应用启动、广告等较长时间等待,如果网络不好或手机卡请增加此数值,默认8秒 var LONG_TIME = 8000; //短等待时间常量,用于例如返回等每步操作后的等待,如果手机卡请增加此数值 var SHORT_TIME = 3000; //是否开启点(扁)猫猫获取蚊子腿喵币功能,默认开启。 //可选值: true:开启;false:关闭 var TAP_FLAG = true ; //点击猫的间隔时间,默认是100毫秒 var TAP_INTERVAL = 100; //点击猫的持续次数,默认是200次 var TAP_TIMES = 200; //领取模式切换,默认为只领取支付宝。 //可选值: 0:支付宝淘宝均领取,1:只领取支付宝,2:只领取淘宝,其他:都不领取 var MODE = 1; /*--------根据个人情况修改以上内容----------*/ auto.waitFor(); var height = device.height; var width = device.width; setScreenMetrics(width, height); //停掉除了本脚本以外的正在运行的脚本 killOthersAlive(); //启用悬浮窗,用于提示,为没有音量下键的手机提供了关闭悬浮窗可以直接停止脚本的方式 var w = floaty.window( <frame gravity= "left" > <text id= "text" textColor= "black" bg= '#ffffff' >★★★Tips:按下[音量-]键或者长按[悬浮窗内文字]可随时结束脚本</text> </frame> ); //设置悬浮窗变量 floatW(); //启用按键监听,按下音量下键脚本结束 keyDetector(); //开始刷喵币 switch (MODE) { case 0: //保持屏幕常亮,最多三十分钟 device.keepScreenDim(30 * 60 * 1000); lingQuZhifubao(); case 1: //保持屏幕常亮,最多三十分钟 device.keepScreenDim(30 * 60 * 1000); lingQuZhifubao(); case 2: //保持屏幕常亮,最多三十分钟 device.keepScreenDim(30 * 60 * 1000); lingQuTaobao(); default : toast( "脚本26行MODE非有效值,脚本结束^_^" ) sleep(SHORT_TIME); exit(); } //启用按键监听,按下音量下键脚本结束 function keyDetector() { threads.start( function () { //在子进程中运行监听事件 events.observeKey(); events.on( "key" , function (code, event) { var keyCodeStr = event.keyCodeToString(code); console.log(code); console.log(keyCodeStr); if (keyCodeStr == "KEYCODE_VOLUME_DOWN" ) { toast( "检测到音量下键,程序已结束。" ); //取消屏幕常亮 device.cancelKeepingAwake(); exit(); } }); }); } function lingQuTaobao() { app.startActivity({ packageName: "com.taobao.taobao" , className: "com.taobao.tao.TBMainActivity" }); ui.run( function () { w.text.setText( "★★★Tips:若长时间无反应请手动打开淘宝首页" ); }); text( "今日爆款" ).waitFor(); //text("天猫超市").waitFor(); sleep(1000); ui.run( function () { w.text.setText( "★★★Tips:按下[音量-]键或者长按[悬浮窗内文字]可随时结束脚本" ); }); //点击“疯抢红包”进入活动页 id( "rv_main_container" ).findOne().child(4).child(0).child(0).click(); //click(width / 2 + 200, TAOBAO_Y); toast( "进入活动页" ); //sleep(LONG_TIME); className( "android.widget.Button" ).text( "我的猫,点击撸猫" ).findOne(LONG_TIME); //偶发的去农场领猫事件 if (text( "亲爱的主人我去芭芭农场玩耍了快来找我回家吧~" ).exists()) { ui.run( function () { w.text.setText( "★★★猫跑去芭芭农场了,请手动完成任务后返回活动主页" ); }); className( "android.widget.Button" ).text( "我的猫,点击撸猫" ).waitFor(); ui.run( function () { w.text.setText( "★★★Tips:按下[音量-]键或者长按[悬浮窗内文字]可随时结束脚本" ); }); } //检测彩蛋 if (text( "获得一个待开奖的彩蛋" ).exists()) { text( "好的,11月11日见" ).findOne().click(); toast( "领取彩蛋成功" ); sleep(SHORT_TIME); } //点击猫旁边的钱袋子 //click(PURSE_X, PURSE_Y); //className("android.widget.Button").textContains("7点可领").findOne().click(); if (className( "android.widget.Button" ).textContains( "点击领取" ).exists()) { className( "android.widget.Button" ).textContains( "点击领取" ).findOne().click(); text( "去喂猫 赚更多喵币" ).waitFor(); text( "去喂猫 赚更多喵币" ).findOne().click(); sleep(SHORT_TIME); } //sleep(SHORT_TIME * 2); //点击赚喵币进入任务页 //click(ZHUAN_X, ZHUAN_Y - 100); className( "android.widget.Button" ).text( "赚喵币" ).findOne().click() toast( "赚喵币" ); sleep(SHORT_TIME * 2); if (text( "签到" ).exists()) { text( "签到" ).findOne().click(); sleep(SHORT_TIME); toast( "签到成功" ); sleep(2000); } while (text( "去浏览" ).exists()) { toast( "存在去浏览" ); text( "去浏览" ).findOne().click(); sleep(1500); swipe(width / 2, height - 500, width / 2, 0, 500); sleep(2500); swipe(width / 2, height - 500, width / 2, 0, 500); sleep(10000); swipe(width / 2, height - 500, width / 2, 0, 500); sleep(8000); back(); sleep(SHORT_TIME + 1000); if (!text( "累计任务奖励" ).exists()) { back(); sleep(SHORT_TIME); } } if (textContains( "邀请好友一起撸猫" ).exists()) { //任务中有邀请任务,无法自动完成,跳过这个任务 toast( "有邀请任务" ); while (text( "去完成" ).exists()) { //寻找并点击第二个“去完成” var tmp = text( "去完成" ).findOnce(1); if (tmp == null ) { //找不到第二个任务了,结束循环 break ; } toast( "存在新任务" ); tmp.click(); sleep(2500); swipe(width / 2, height - 600, width / 2, 0, 500); sleep(3500); swipe(width / 2, height - 600, width / 2, 0, 500); sleep(10000); swipe(width / 2, height - 600, width / 2, 0, 500); sleep(9000); back(); sleep(SHORT_TIME + 1000); } } else { toast( "无邀请任务" ); while (text( "去完成" ).exists()) { toast( "存在新任务" ); text( "去完成" ).findOne().click(); sleep(2500); swipe(width / 2, height - 600, width / 2, 0, 500); sleep(3500); swipe(width / 2, height - 600, width / 2, 0, 500); sleep(10000); swipe(width / 2, height - 600, width / 2, 0, 500); sleep(9000); back(); sleep(SHORT_TIME + 1000); } } while (text( "去搜索" ).exists()) { toast( "存在去搜索" ); text( "去搜索" ).findOne().click(); sleep(1500); swipe(width / 2, height - 500, width / 2, 0, 500); sleep(2500); swipe(width / 2, height - 500, width / 2, 0, 500); sleep(10000); swipe(width / 2, height - 500, width / 2, 0, 500); sleep(8000); back(); sleep(SHORT_TIME + 1000); } while (text( "去逛逛" ).exists()) { toast( "存在去逛逛" ); text( "去逛逛" ).findOne().click(); sleep(1500); swipe(width / 2, height - 500, width / 2, 0, 500); sleep(2500); swipe(width / 2, height - 500, width / 2, 0, 500); sleep(10000); swipe(width / 2, height - 500, width / 2, 0, 500); sleep(8000); back(); sleep(SHORT_TIME + 1000); } toast( "领取完成..." ); if (TAP_FLAG) { back(); sleep(SHORT_TIME + 1000); //点击“疯抢红包”进入活动页 id( "rv_main_container" ).findOne().child(4).child(0).child(0).click(); //click(width / 2 + 200, TAOBAO_Y); //开始扁猫功能 taptap(); } home(); //刷支付宝喵币 toast( "脚本结束^_^" ); //取消屏幕常亮 device.cancelKeepingAwake(); sleep(SHORT_TIME); exit(); } function lingQuZhifubao() { //toast("正在打开支付宝..."); app.startActivity({ packageName: "com.eg.android.AlipayGphone" , className: "com.eg.android.AlipayGphone.AlipayLogin" }); //waitForActivity("com.eg.android.AlipayGphone.AlipayLogin"); //sleep(LONG_TIME); ui.run( function () { w.text.setText( "★★★Tips:若长时间无反应请手动打开支付宝首页" ); }); text( "扫一扫" ).waitFor(); //text("付钱/收钱").waitFor(); //sleep(SHORT_TIME); sleep(2000); ui.run( function () { w.text.setText( "★★★如等待较长请手动进入支付宝活动页" ); }); //点击进入活动页,控件的clickable为false,需要点击坐标 var target=className( "android.widget.RelativeLayout" ).idContains( "home_adbannerview" ).findOne(SHORT_TIME); if (target== null ) { //toast(1); target = className( "android.widget.FrameLayout" ).descContains( "双11狂欢节" ).findOne(2000); //有时候两个按钮的desc都是双11,要判断一下右边那个 if (target.bounds().right < (width / 2)) { target = className( "android.widget.FrameLayout" ).desc( "双11狂欢节" ).findOnce(1); } // toast(target.bounds()); //下面是点击靠下入口的位置 click(target.bounds().centerX(), target.bounds().centerY()); //toast(target.bounds()); } else { //log(idContains("home_adbannerview").findOne(2000)); //toast(2); //10月26日后修改了活动页位置 target = descContains( "双11来了,瓜分20亿红包" ).findOne(2000); if (target != null ) { //toast(3); click(parseInt(width / 2), target.bounds().bottom - 100); } else { //toast(4); target = idContains( "home_grid_notice_container" ).findOne(); //寻找按键下方的grid的位置,往上数100个像素就是要点击的纵坐标 //点击“马上领取”进入活动页 click(parseInt(width / 2), target.bounds().top - 100); } } /* if (className("android.widget.Button").text("我的猫,点击撸猫").findOne(2000) == null) { click(parseInt(width / 2), target.top - 100); }*/ //sleep(LONG_TIME); textContains( "我的猫,点击撸猫" ).waitFor(); sleep(1000); //检测彩蛋 ui.run( function () { w.text.setText( "★★★Tips:按下[音量-]键或者长按[悬浮窗内文字]可随时结束脚本" ); }); if (text( "获得一个待开奖的彩蛋" ).exists()) { text( "好的,11月11日见" ).findOne().click(); toast( "领取彩蛋成功" ); sleep(SHORT_TIME); } //点击猫旁边的钱袋子 //click(PURSE_X, PURSE_Y); if (className( "android.widget.Button" ).textContains( "点击领取" ).exists()) { className( "android.widget.Button" ).textContains( "点击领取" ).findOne().click(); text( "去喂猫 赚更多喵币" ).waitFor(); text( "去喂猫 赚更多喵币" ).findOne().click(); sleep(SHORT_TIME); } //点击赚喵币进入任务页 //click(ZHUAN_X, ZHUAN_Y - 100); toast( "赚喵币" ); if (className( "android.widget.Button" ).text( "赚喵币" ).exists()) { className( "android.widget.Button" ).text( "赚喵币" ).findOne().click(); sleep(SHORT_TIME * 2); } if (text( "签到" ).exists()) { text( "签到" ).findOne().click(); sleep(SHORT_TIME); toast( "签到成功" ); sleep(2000); } while (text( "逛一逛" ).exists()) { toast( "存在逛一逛" ); text( "逛一逛" ).findOne().click(); sleep(18000); back(); sleep(SHORT_TIME + 1000); if (text( "好的,我知道了" ).exists()) { text( "好的,我知道了" ).findOne().click(); sleep(SHORT_TIME); } if (text( "残忍离开" ).exists()) { text( "残忍离开" ).findOne().click(); sleep(SHORT_TIME); } } //支付宝的“去完成”任务差异较大,其他任务需手动完成 //施肥任务 if (text( "去芭芭农场施肥一次" ).exists()) { text( "去芭芭农场施肥一次" ).findOne().parent().child(3).click(); ui.run( function () { w.text.setText( "★★★正在运行[去芭芭农场施肥一次]任务,如等待较长请手动操作完成" ); }); sleep(SHORT_TIME); //点击“集肥料 target = className( "android.widget.Image" ).idContains( "game" ).findOne().parent().parent().parent().parent().child(3); target.click(); //点击“去签到” var t = text( "去签到" ).findOne(3000); if (t != null ) { t.click(); } else { toast( "未找到[去签到],如肥料不够请手动获取" ); } //关闭任务界面 className( "android.widget.Image" ).idContains( "game" ).findOne().parent().parent().parent().parent().parent().child(3).child(0).child(1).click(); sleep(1000); //领取当日肥料 target = className( "android.widget.Image" ).idContains( "game" ).findOne().bounds(); click(target.centerX() + 230, target.centerY() + target.height() * 0.09); t = text( "去施肥" ).findOne(1000); if (t != null ) { t.click(); } //点击施肥 sleep(1000); target = className( "android.widget.Image" ).idContains( "game" ).findOne().parent().parent().parent().parent().child(3); click(width / 2, target.bounds().centerY()); back(); text( "好的,我知道了" ).findOne().click(); ui.run( function () { w.text.setText( "★★★Tips:按下[音量-]键或者长按[悬浮窗内文字]可随时结束脚本" ); }); sleep(SHORT_TIME); } //浇水任务 if (text( "去蚂蚁森林给好友浇水" ).exists()) { ui.run( function () { w.text.setText( "★★★正在运行[浇水]任务,如浇水上限/等待较长请手动操作完成" ); }); text( "去蚂蚁森林给好友浇水" ).findOne().parent().child(3).click(); text( "种树" ).waitFor(); swipe(width / 2, height - 300, width / 2, 0, 500); //点击排行榜第一 //sleep(1000); toast(text( "总排行榜" ).findOne().parent().parent().child(12).child(0).bounds()); text( "总排行榜" ).findOne().parent().parent().child(12).child(0).click(); textEndsWith( "的蚂蚁森林" ).waitFor(); sleep(1000); target = idContains( "J_tree_dialog_wrap" ).findOne().bounds(); //点击浇水 click(target.centerX() - 50, target.bottom - 50); className( "android.widget.Button" ).text( "浇水送祝福" ).findOne().click(); sleep(1000) back(); sleep(2000); back(); text( "好的,我知道了" ).findOne().click(); } //点击猫旁边的钱袋子 //click(PURSE_X, PURSE_Y); if (className( "android.widget.Button" ).textContains( "关闭任务弹窗" ).exists()){ className( "android.widget.Button" ).textContains( "关闭任务弹窗" ).findOne().click(); sleep(500); } if (className( "android.widget.Button" ).textContains( "点击领取" ).exists()) { className( "android.widget.Button" ).textContains( "点击领取" ).findOne().click(); text( "去喂猫 赚更多喵币" ).waitFor(); text( "去喂猫 赚更多喵币" ).findOne().click(); } //home(); //sleep(SHORT_TIME); //淘宝领取 if (MODE == 1) { if (TAP_FLAG){ toast( "开始扁猫猫" ); taptap(); } toast( "无[逛一逛]任务,脚本结束^_^" ); //取消屏幕常亮 device.cancelKeepingAwake(); sleep(SHORT_TIME); exit(); } else { toast( "无[逛一逛]任务\n结束支付宝,等待打开淘宝..." ); lingQuTaobao(); } } function taptap() { //扁猫猫可以获得额外的蚊子腿喵币 toast( "开始狂扁猫猫功能" ); className( "android.widget.Button" ).text( "我的猫,点击撸猫" ).waitFor(); for ( var i = 0; i < TAP_TIMES; i++) { //点击中心位置 click(parseInt(width / 2), parseInt(height / 2)); sleep(TAP_INTERVAL); } toast( "扁猫结束" ); } function floatW() { //悬浮窗不会自动关闭 setInterval(() => {}, 1000); w.setPosition(0, height - 800); w.setSize(400, 300); //悬浮窗可调整大小 w.setAdjustEnabled( true ); //退出悬浮窗即结束脚本 //w.exitOnClose(); //长按悬浮窗内文字结束脚本 w.text.longClick(() => { //取消屏幕常亮 device.cancelKeepingAwake(); toast( "检测到长按悬浮窗文字,脚本终止" ); //try...catch把exit()函数的异常捕捉,则脚本不会立即停止,仍会运行几行后再停止 try { exit(); } catch (err) {} //直接exit()的话坚持不到return的时候 return true ; }); } function killOthersAlive() { //获取全部正在运行的脚本引擎 var allEngines = engines.all(); //log(allEngines); for ( var i = 0; i < allEngines.length; i++) { //停掉除了本脚本以外的正在运行的脚本 if (allEngines[i] != engines.myEngine()) { allEngines[i].forceStop(); } } } |
2.Auto.js的使用方法
简单说,Auto.js是一个手机的APP,不需要root权限就能运行自己写的JS脚本。
- 安装AutoJS(可以在此下载下载:https://wws.lanzous.com/i6opglvizaf 密码:添加微信公众号【泓源视野网络安全】
- 发送【手机脚本】免费获得
- 在手机上安装并打开Auto.js,会提示打开辅助功能(各个手机叫法不同,比如三星叫服务,魅族叫无障碍服务)。
关于无障碍功能的开启,各个手机可能不同,但大致是一样的,以MIUI为例,入口在:设置 - 更多设置 - 无障碍 - 已下载的服务 - Auto.js - 开启服务
- 给Auto.js开启 "后台弹出界面" 权限,否则无法启动第二个app!!!(开启方法:长按Auto.js,打开应用信息 - 权限设置,确认“后台弹出界面”权限开启,见下图)
(华为手机找不到这个权限:设置〉应用管理〉设置〉特殊访问权限〉在其他应用的上层显示〉auto.js)
- 打开Auto.js,点击右下角"+"号,(在这里选择“导入”可以导入前面下载的js脚本)选择“文件”可以创建新的脚本,随便起个名字,点“确定”,然后把这个博客上面的代码完整复制进去,点右上角保存的图标
- 关闭键盘,点右上角的小三角运行程序
- 等待程序运行,超过15s没反应才是不正常的。(建议锁屏时间设置为30s及以上)
附加题:Auto.js有自动定时运行脚本的功能,你可以设置这个脚本在每天早上你还没醒的时候自动运行刷喵币,可以参考如下:
点击脚本右边的菜单按钮->更多->定时任务即可定时运行脚本,但是必须保持Auto.js后台运行(自启动白名单、电源管理白名单等)。同时,可以在脚本的开头使用
device.wakeUp()
来唤醒屏幕;但是,Auto.js没有解锁屏幕的功能,因此难以在有锁屏密码的设备上达到效果。
3.安卓手机获取点击屏幕坐标的方法
- 确认开启开发者模式
如何打开开发者模式请参考https://baijiahao.baidu.com/s?id=1595634582987842609
- 进入开发者选项
- 入口一般是:“设置”-“更多设置”-“开发者选项”
- 往下滑,找到“指针位置”功能并打开,之后的点击操作都会在屏幕上方显示坐标,屏幕上的细线不是屏幕坏了,是记录了你的滑动轨迹
- 通过这个功能,手动进行打开淘宝进入活动界面刷喵币等操作,根据屏幕上方显示的坐标修改代码最前面对应操作的坐标,使得自动点击操作能够适配你的手机屏幕
4.写给小白
- 把链接的两个文件都下载了(记得自己的下载位置)
- 把apk文件安装了
- 把zip文件解压了,得到js文件(记得解压位置)
- 看上面第二点“Auto.js的使用方法”中,按照上面写的方法给设置 无障碍 和 后台显示 权限
- 打开Auto.js,点击右下角的+号,选第一个导入脚本,脚本就是第3步你解压的js文件
- 确保淘宝和支付宝未开启,或者在首页,打开手机GPS定位,在Auto.js点击三角号运行脚本(首次运行脚本可能会提示是否允许Auto.js打开支付宝/淘宝,手动点击确认,按[音量-键]结束,并重新运行脚本即可)
- 如果遇到瞎点的情况,请立即按下手机的[音量-]键停止程序,你也可以在Auto.js的主页-管理中找到正在运行的脚本,点击×关掉它
- 如果出错请告诉我具体执行到哪个阶段。
5.写给进阶玩家
- 在上面的小白的基础上,可以自己纠错
- 比如通过第三点安卓手机获取点击屏幕坐标的方法让脚本运行时显示每次点击的具体坐标,然后修改代码最开头的常量,对自己的手机进行适配
- 通过Auto.js给脚本设置自动运行时间,每天睡觉的时候自动刷
- 想改啥改啥,注释写的很详细了
Auto.js官方文档
https://hyb1996.github.io/AutoJs-Docs/#/
6.Q&A
- Q:我觉得脚本运行的每步操作等的太久了,有点憨憨
A:稳定性比效率更重要,这是为了照顾老年机和山区的同志,你可以自行修改代码第5、6行的时间常量,设置小一些。
如果等待时间过短,会出现未加载成功就进行判定和点击操作,从而导致错误的逻辑。
相对的如果你的手机太卡,或者网络不佳,可以增大这两个时间常量(需要设置手机锁屏时间不要过短,否则会锁屏)。
- Q:进入活动页后没有点“赚喵币”/没有进入“赚喵币”的任务界面,直接提示“无[逛一逛]任务”就结束支付宝领取流程
A:问题出在1.0版本的一个BUG,已于1.11之后的版本修复
- Q:开启扁猫猫功能后出现“TABAO_X未定义”的情况
A:问题出在1.12版本的一个BUG,已于1.13之后的版本修复
7.注意事项
- 测试环境是安卓10版本,运行可能需要安卓7版本以上,适合1080p分辨率的全面屏手机
- 程序并没有测试所有情况,可能会遇到一些偶然弹窗影响进程,一般手动处理后,关掉脚本和淘宝支付宝,重新运行即可
- 每天可以通过任务界面最下面的淘宝和支付宝互相打开的按钮领取10万喵币,一次性的,请手动完成
- 累计任务奖励需要手动领取
- 喂猫升级需要自己操作
- 程序的的唤起如果失败,需要注意是否禁止了被其他程序启动
- 由于只在我自己的小米8上进行了测试,屏幕尺寸1080*2248,针对不同设备可能需要手动调整代码最开始的常量,如果你的某一步点击操作失败,请自行调整代码最前面的常量以适配你的屏幕
- 这是一个脚本的想法和验证,仅供学习交流,下载体验后,请24小时内删除!!!
- 非商业性使用 — 不得将此项目及其衍生的项目的源代码和二进制产品用于任何商业和盈利用途
- License:本项目使用CC-BY-NC-SA授权,但禁止使用此脚本发布任何教学视频!!!
吐槽:主要的坑在于连续启动两个app,尝试了各种方法,原来问题出在权限不够,感谢这位老哥。