App太多压根薅不过来,所以签到得积分是必要的功能而且奖励还可以。有的App如果不签到则无法TX,所以签到的必要性已经体现出来了。而App太多我们要是人工执那叫一个累啊。
福利来了!!! 大家支持一下,谢谢!
/** * 一键签到 * @param {签到程序得app} appArray * @param {是否显示控制台} isShowConsole */ function sign(appArray, isShowConsole) { threads.start(function () { if (isShowConsole) { console.show(); console.setSize(device.width, device.height / 4); } }); for (i = 0; i < appArray.length; i++) { let appName = appArray[i]; stopApp(appName);//停止APP app.launchApp(appName); console.show(); //开启日志(悬浮窗权限) console.log("当前签到程序" + appName); sleep(15000);//网速和splash时间不等所以多等一会 if (appName == '抖音极速版') { douyinIKnown(); let ImageView = className("android.widget.ImageView").depth(3).find(); if (ImageView.length == 3) { ImageView[0].click(); swipe(device.width / 2, device.height - 200, device.width / 2, 500, 700); if (text("去查看").exists()) { console.log("抖音去查看"); let b = text("去查看").findOne().bounds(); click(b.centerX(), b.centerY()); } recordSignTime(appName); sleep(5000); } stopApp(appName);//停止APP } else if (appName == '快手极速版') { if (id("redFloat").exists()) { console.log("点击redFloat"); let b = id("redFloat").findOne().bounds(); click(b.centerX(), b.centerY()); sleep(5000); } sleep(2000); swipe(device.width / 2, device.height - 200, device.width / 2, 500, 700); sleep(2000); if (className("android.widget.Button").text("去签到").exists()) { console.log("快手极速版去签到"); let b = text("去签到").findOne().bounds(); click(b.centerX(), b.centerY()); //TODO 关闭按钮也是无ID 无desc的× sleep(5000); recordSignTime(appName); back(); } stopApp(appName);//停止APP } else if (appName == '刷宝短视频') { authorityCancleTip(); sleep(1000); let task_button = id("tv_tab_title").className("android.widget.TextView").text("任务"); if (task_button.exists()) { let b = task_button.findOne().bounds(); click(b.centerX(), b.centerY()); } sleep(1000); if (id("imgClose").exists()) { id("imgClose").findOnce().click(); sleep(2000); } else { let views = className("android.view.View").find(); if (views.length > 0) { let b1 = views[views.length - 1].bounds(); click(b1.centerX(), b1.centerY()); sleep(2000); } } sleep(2000); if (className("android.widget.ImageView").id("imgClose").exists()) { className("android.widget.ImageView").id("imgClose").findOnce().click(); } if (className("android.widget.Button").text("立即签到").exists()) { text("立即签到").click(); sleep(3000); if (className("android.view.View").text("看视频签到").exists()) { text("看视频签到").findOnce().click(); } sleep(36000);//36S的视频 if (id("iv_close").exists()) { id("iv_close").findOnce().click(); } } sleep(5000); recordSignTime(appName); stopApp(appName);//停止APP } else if (appName == '火山极速版') { if (id("wf").exists()) { let b = id("wf").findOne().bounds(); click(b.centerX(), b.centerY()); sleep(1000); swipe(device.width / 2, device.height - 200, device.width / 2, 500, 700); } sleep(5000); recordSignTime(appName); stopApp(appName);//停止APP } else if (appName == '彩蛋视频') { try { if (className("android.widget.TextView").id("tv_task_status").exists()) { console.log("彩蛋视频"); if (className("android.widget.ImageView").id("tv_task_status")) { className("android.widget.ImageView").id("tv_task_status").findOnce().click(); } let b = className("android.widget.TextView").id("tv_task_status").findOnce().bounds(); click(b.centerX(), b.centerY()); recordSignTime(appName); } } catch (e) { } stopApp(appName);//停止APP sleep(5000); } else if (appName == '红包视频') { if (className("android.widget.TextView").text("任务").exists()) { let b = className("android.widget.TextView").text("任务").findOnce().bounds(); click(b.centerX(), b.centerY()); } sleep(1234); try { if (className("android.widget.TextView").text("立即签到").exists()) { console.info("红包视频,立即签到"); className("android.widget.TextView").text("立即签到").findOnce().click(); recordSignTime(appName); } } catch (e) { } stopApp(appName);//停止APP sleep(1000); } else if (appName == '火火视频极速版') { try { let boundVideo = null; let bottomMenu = className("android.widget.RelativeLayout").find(); console.log(bottomMenu.length); for (let i = 0; i < bottomMenu.length; i++) { let video = bottomMenu[i].children().findOne(text("任务")); if (video != null) { console.log(i); boundVideo = bottomMenu[i].bounds(); } } if (boundVideo == null) { console.info("没有任务"); let bottomMenu = className("android.widget.RelativeLayout").find(); bottomMenu[bottomMenu.length - 1].click(); } else { click(boundVideo.centerX(), boundVideo.centerY()); } } catch (e) { console.error(e);} stopApp(appName);//停止APP } else if (appName == '番茄免费小说') { if (className("android.widget.RadioButton").text("福利").exists()) { console.log("番茄免费小说,点击福利"); className("android.widget.RadioButton").text("福利").findOnce().click(); sleep(5000);//福利页面加载很慢所以等一会 recordSignTime(appName); } stopApp(appName);//停止APP sleep(5000); } else if (appName == '七猫免费小说') { if (className("android.widget.TextView").text("福利").exists()) { console.log("七猫免费小说。福利"); let b = className("android.widget.TextView").text("福利").findOnce().bounds(); click(b.centerX(), b.centerY()); } sleep(3000); try { if (className("android.view.View").text("签到+20金币").exists()) { console.info("签到+20金币"); className("android.view.View").text("签到+20金币").findOnce().click(); recordSignTime(appName); } if (className("android.view.View").text("立即签到").exists()) { className("android.view.View").text("立即签到").findOnce().click(); recordSignTime(appName); } } catch (e) { } stopApp(appName);//停止APP sleep(5000); } else if (appName == '疯读小说') { if (className("android.widget.TextView").text("我").exists()) { let b = className("android.widget.TextView").text("我").findOnce().bounds(); click(b.centerX(), b.centerY()); } sleep(3000);//特别慢得等一会 if (className("android.widget.TextView").text("福利中心").exists()) { let b = className("android.widget.TextView").text("福利中心").findOnce().bounds(); click(b.centerX(), b.centerY()); } sleep(12000);//更慢 if (className("android.widget.Button").text("继续").exists()) { let b = className("android.widget.TextView").text("继续").findOnce().click(); } sleep(3000); if (className("android.view.View").text("去签到").exists()) { recordSignTime(appName); let b = className("android.view.View").text("去签到").findOnce().click(); } stopApp(appName);//停止APP sleep(5000); } else if (appName == '看点快报') { if (className("android.widget.TextView").text("我的").exists()) { let b = className("android.widget.TextView").text("我的").findOnce().bounds(); click(b.centerX(), b.centerY()); } sleep(1000);//特别慢得等一会 if (className("android.widget.TextView").text("福利红包").exists()) { let b = className("android.widget.TextView").text("福利红包").findOnce().bounds(); click(b.centerX(), b.centerY()); } sleep(3000);//特别慢得等一会 if (className("android.widget.Button").text("立即签到").exists()) { sleep(6000); console.info("立即签到"); let signList = className("android.widget.Button").text("立即签到").find(); console.info(signList.length); let b = signList[signList.length - 1].bounds(); click(b.centerX(), b.centerY()); recordSignTime(appName); back(); } stopApp(appName);//停止APP sleep(5000); } else if (appName == '淘最热点') { sleep(10000); console.info("淘最热点"); if (className("android.widget.ImageView").id("dialog_close_img").exists()) { console.info("dialog_close_img"); className("android.widget.ImageView").id("dialog_close_img").findOnce().click(); } sleep(1500); if (className("android.widget.TextView").id("main_task_tv").exists()) { console.info("main_task_tv"); let b1 = className("android.widget.TextView").id("main_task_tv").findOnce().bounds(); click(b1.centerX(), b1.centerY()); sleep(3000);//有点少 if (className("android.widget.TextView").text("立即签到").exists()) { let b = className("android.widget.TextView").text("立即签到").findOnce().bounds(); click(b.centerX(), b.centerY()); } } if (className("android.widget.ImageView").id("dialog_close_img").exists()) { console.info("dialog_close_img"); recordSignTime(appName); className("android.widget.ImageView").id("dialog_close_img").findOnce().click(); } stopApp(appName);//停止APP sleep(5000); } else if (appName == '步多多') { if (className("android.widget.TextView").id("a7r").exists()) { console.info("点击赚赚"); let b = className("android.widget.TextView").id("a7r").findOnce().bounds(); click(b.centerX(), b.centerY()); sleep("5000"); recordSignTime(appName); if (className("android.view.View").id("dd").exists()) { className("android.view.View").id("dd").findOnce().click(); } } if (className("android.view.View").id("dd").exists()) { console.info("dd"); className("android.view.View").id("dd").findOnce().click();// } stopApp(appName);//停止APP } else if (appName == '惠运动') { if (className("android.widget.TextView").text("同意并继续").exists()) { console.info("同意并继续"); className("android.widget.TextView").text("同意并继续").findOnce().click(); } sleep(5000); if (className("android.widget.ImageView").id("close_image_view").exists()) { className("android.widget.ImageView").id("close_image_view").findOnce().click(); } if (className("android.widget.TextView").text("任务中心").exists()) { console.info("点击任务中心"); let b = className("android.widget.TextView").text("任务中心").findOnce().parent().bounds(); click(b.centerX(), b.centerY()); sleep("6000");//猫扑运动 if (className("android.widget.ImageView").id("iv_dialog_close_bottom").exists()) { recordSignTime(appName); className("android.widget.ImageView").id("iv_dialog_close_bottom").findOnce().click(); } } stopApp(appName);//停止APP } else if (appName == '猫扑运动') { if (className("android.view.View").id("close_view").exists()) { console.info("点击close_view"); id("close_view").findOnce().click(); } if (className("android.widget.TextView").id("tv_tab_task").exists()) { console.info("点击赚赚"); let b = className("android.widget.TextView").id("tv_tab_task").findOnce().bounds(); click(b.centerX(), b.centerY()); sleep("10000"); recordSignTime(appName); if (className("android.view.View").desc("放弃奖励").exists()) { className("android.view.View").desc("放弃奖励").findOnce().click(); } } if (className("android.view.View").desc("放弃奖励").exists()) { recordSignTime(appName); className("android.view.View").desc("放弃奖励").findOnce().click(); } stopApp(appName);//停止APP sleep(1111); } else if (appName == '快刷') { if (className("android.widget.TextView").text("任务").exists()) { console.info("点击任务"); let b = className("android.widget.TextView").text("任务").findOnce().bounds(); click(b.centerX(), b.centerY()); sleep(25000);//必须看要不不给签到奖励 recordSignTime(appName); } stopApp(appName);//停止APP sleep(5000); } else if (appName == '淘金号') { sleep(3000); if (className("android.widget.TextView").text("任务").exists()) { console.info("点击任务"); let b = className("android.widget.TextView").text("任务").findOnce().bounds(); click(b.centerX(), b.centerY()); sleep(25000);//必须看要不不给签到奖励 recordSignTime(appName); } stopApp(appName);//停止APP sleep(5000); } else if (appName == '刷爆短视频') { if (className("android.widget.TextView").text("任务").exists()) { console.info("点击任务"); let b = className("android.widget.TextView").text("任务").findOnce().bounds(); click(b.centerX(), b.centerY()); sleep(25000);//必须看要不不给签到奖励 recordSignTime(appName); } stopApp(appName);//停止APP sleep(5000); } else if (appName == '栗子视频') { if (className("android.widget.TextView").text("任务").exists()) { console.info("点击任务"); let b = className("android.widget.TextView").text("任务").findOnce().parent().bounds(); click(b.centerX(), b.centerY()); sleep(25000);//必须看要不不给签到奖励 recordSignTime(appName); } stopApp(appName);//停止APP sleep(5000); } else if (appName == '魔视') { sleep(15000); if (className("android.widget.TextView").text("我的").exists()) { console.info("点击我的"); //className("android.widget.TextView").text("我的").findOnce().click(); let b = className("android.widget.TextView").text("我的").findOnce().parent().bounds(); click(b.centerX(), b.centerY()); sleep(25000);//必须看要不不给签到奖励 recordSignTime(appName); } stopApp(appName);//停止APP sleep(5000); } else if (appName == '天天短视频') { if (className("android.widget.TextView").text("赚钱").exists()) { let b = className("android.widget.TextView").text("赚钱").findOnce().parent().bounds(); click(b.centerX(), b.centerY()); sleep(3000); } if (className("android.widget.TextView").text("立即签到").exists()) { console.info("点击立即签到"); let b = className("android.widget.TextView").text("立即签到").findOnce().bounds(); click(b.centerX(), b.centerY()); //sleep(25000);//必须看要不不给签到奖励 recordSignTime(appName); } stopApp(appName);//停止APP sleep(5000); } else if (appName == '鲤刷刷') { if (className("android.widget.TextView").text("赚钱").exists()) { console.info("点击赚钱"); let b = className("android.widget.TextView").text("赚钱").findOnce().parent().bounds(); click(b.centerX(), b.centerY()); sleep(3000); } if (className("android.widget.TextView").text("立即签到").exists()) { console.info("点击立即签到"); className("android.widget.TextView").text("立即签到").findOnce().click(); sleep(25000);//必须看要不不给签到奖励 recordSignTime(appName); } sleep(5000); stopApp(appName);//停止APP } else if (appName == '玩赚魔盒') { if (className("android.widget.TextView").text("马上赚钱").exists()) { console.info("点击赚钱"); let b = className("android.widget.TextView").text("马上赚钱").findOnce().bounds(); click(b.centerX(), b.centerY()); sleep(30000); back(); } if (className("android.widget.TextView").text("取消").exists()) { console.info("点击取消"); let b = className("android.widget.TextView").text("取消").findOnce().bounds(); click(b.centerX(), b.centerY()); sleep(3000); recordSignTime(appName); } stopApp(appName);//停止APP sleep(5000);// } else if (appName == '有颜短视频') { sleep(10000);//有颜短视频 let bottomMenu = className("android.widget.RelativeLayout").find(); if (bottomMenu.length > 3) { bottomMenu[bottomMenu.length - 2].click(); let b = bottomMenu[bottomMenu.length - 2].bounds(); click(b.centerX(), b.centerY()); if (className("android.widget.TextView").text("立即签到").exists()) { console.info("点击立即签到"); let b = className("android.widget.TextView").text("立即签到").findOnce().bounds(); click(b.centerX(), b.centerY()); sleep(32000); recordSignTime(appName); } } stopApp(appName);//停止APP } else if (appName == '水宝宝') { if (className("android.widget.ImageView").id("ez").exists()) { className("android.widget.ImageView").id("ez").findOnce().click(); } if (className("android.widget.TextView").text("赚赚").exists()) { console.info("点击赚赚"); let b = className("android.widget.TextView").text("赚赚").findOnce().bounds(); click(b.centerX(), b.centerY()); sleep(1000); recordSignTime(appName); } stopApp(appName);//停止APP sleep(1000); } else if (appName == '爱走路') { //点击爱赚钱进行签到 if (className("android.widget.TextView").text("爱赚钱").exists()) { console.info("点击爱赚钱"); let b = className("android.widget.TextView").text("爱赚钱").findOnce().bounds(); click(b.centerX(), b.centerY()); sleep(5000); recordSignTime(appName); } stopApp(appName);//停止APP } else if (appName == '追看视频') { try { //点击爱赚钱进行签到 if (className("android.widget.TextView").text("任务").exists()) { console.info("点击任务"); let b = className("android.widget.TextView").text("任务").findOnce().bounds(); click(b.centerX(), b.centerY()); sleep(5000); recordSignTime(appName); } } catch (e) { } stopApp(appName);//停止APP } else if (appName == '京东') { try { jingdong(); sleep(1000); } catch (e) { } stopApp(appName);//停止APP } else if (appName == '欢乐走') { try { if (className("android.widget.TextView").text("福利").exists()) { console.info("点击福利"); let b = className("android.widget.TextView").text("福利").findOnce().bounds(); click(b.centerX(), b.centerY()); sleep("5000"); if (className("android.view.View").id("dd").exists()) { className("android.view.View").id("dd").findOnce().click(); recordSignTime(appName); } sleep(1000); } } catch (e) { } stopApp(appName);//停止APP } else if (appName == '多多步') { try { if (className("android.widget.FrameLayout").desc("赚赚").exists()) { console.info("点击赚赚"); let b = className("android.widget.FrameLayout").desc("赚赚").findOnce().bounds(); click(b.centerX(), b.centerY()); sleep("5000"); recordSignTime(appName); sleep(1000); } } catch (e) { } stopApp(appName);//停止APP } else if (appName == "爱走路") { try { //点击爱赚钱进行签到 if (className("android.widget.TextView").text("爱赚钱").exists()) { console.info("点击爱赚钱"); let b = className("android.widget.TextView").text("爱赚钱").findOnce().bounds(); click(b.centerX(), b.centerY()); sleep(5000); if (className("android.view.View").id("dd").exists()) { className("android.view.View").id("dd").findOnce().click(); } sleep(1000); recordSignTime(appName); } } catch (e) { } stopApp(appName);//停止APP } else if (appName == "喜马拉雅极速版") { try { ximalaya() sleep(1000); recordSignTime(appName); } catch (e) { } stopApp(appName);//停止APP } else if (appName == "音浪短视频") { try { if (className("android.widget.ImageView").id("img_close").exists()) { className("android.widget.ImageView").id("img_close").findOnce().click(); } let bottomMenus = className("android.widget.RelativeLayout").find(); if (bottomMenus.length > 2) { bottomMenus[bottomMenus.length - 2].click(); } recordSignTime(appName); } catch (e) { } stopApp(appName);//停止APP } } toastInfo("签到即将结束......"); }
能写的我基本都写了。有一些可能有点小BUG使用者调整一下,我发现也也会更新。