GitHub地址:https://github.com/hyb1996/Auto.js
文檔地址:https://hyb1996.github.io/AutoJs-Docs/#/?id=%E7%BB%BC%E8%BF%B0
Android軟件下載:https://www.coolapk.com/apk/129872
今天看今日頭條無意間看到個螞蟻森林自動收能量的腳本,於是打開看看安全性。
下面是代碼:
1 auto(); 2 //auto.waitFor(); 3 4 requestScreenCapture(); 5 //解鎖 6 unlock("1111");//里面是你的鎖屏密碼,僅支持數字解鎖,並且需要點擊確定鍵,需要點擊確定鍵的需要自己改一下解鎖函數 7 8 var friendNumber=145;//這里輸入你的好友數,適當輸大一點 9 10 threads.start(function(){ 11 toast("按音量下鍵停止") 12 //啟動監聽 13 events.observeKey(); 14 //監聽音量下鍵 15 events.onKeyDown("volume_down",function(event){ 16 toast("已停止") 17 exit(); 18 }) 19 20 }); 21 22 23 //啟動app 24 launchApp("支付寶"); 25 waitForActivity("com.eg.android.AlipayGphone.AlipayLogin"); 26 sleep(5000); 27 var w=text("螞蟻森林").className("android.widget.TextView").findOne(); 28 var b=w.bounds(); 29 if(w==null){ 30 log("null"); 31 } 32 //點擊螞蟻森林 33 if(click(b.centerX(),b.centerY())){ 34 //toast("點擊成功"); 35 log("點擊成功"); 36 }else{ 37 log("點擊失敗"); 38 } 39 40 41 42 //收集自己的能量 43 sleep(5000); 44 //collectEnergy(); 45 46 var width=device.width; 47 var i,j; 48 49 //盲點收自己的能量 50 for(i=450;i<=800;){//y方向點擊范圍 51 threads.start(function(){ 52 for(j=300;j<width-200;){//x方向點擊范圍 53 click(j,i); 54 j=j+150; 55 } 56 }); 57 sleep(1000); 58 i=i+100; 59 } 60 61 toastLog("收集能量完成"); 62 63 //偷好友能量 64 sleep(3000); 65 stealEnergy(friendNumber); 66 67 toastLog("偷能量完成"); 68 69 sleep(2000); 70 71 back(); 72 sleep(2000); 73 back(); 74 sleep(2000); 75 76 //關閉應用,僅有root權限下有用 77 shell("am force-stop com.eg.android.AlipayGphone",true); 78 79 exit(); 80 81 82 //解鎖函數 83 function unlock(password){ 84 var a; 85 var b; 86 if (!device.isScreenOn()) { 87 device.wakeUpIfNeeded(); 88 sleep(2000); 89 swipe(500,1000,500,100,1000); 90 for(var i=0;i<password.length;i++){ 91 a=password.charAt(i); 92 log(a); 93 sleep(500); 94 b=text(a).findOne().bounds(); 95 click(b.centerX(),b.centerY()); 96 } 97 //需要點擊確定鍵的可以在下面加上click(x坐標,y坐標); 98 toast("解鎖成功"); 99 sleep(500); 100 } 101 } 102 103 //收能量 104 function collectEnergy(){ 105 sleep(2000); 106 var i=descContains("收集能量").find().size(); 107 toast("可以收集"+i+"個能量"); 108 //descContains("收集能量").exists(); 109 while(i!=0){ 110 b=descContains("收集能量").findOne().bounds(); 111 sleep(1000); 112 click(b.centerX(),b.centerY()); 113 i--; 114 sleep(1000); 115 } 116 } 117 118 //找好友的能量 119 function findFriendEnergy(){ 120 //截圖 121 var img = captureScreen(); 122 //toastLog("開始找色"); 123 //var point = findColor(img, "#1DA06D"); 124 var point = findColorInRegion(img,"#1DA06D", 0, 0, device.width,400); 125 if(point){ 126 //toastLog("x = " + point.x + ", y = " + point.y); 127 //點擊進去偷能量 128 click(point.x,point.y+50); 129 return true; 130 }else{ 131 //toastLog("沒有找到"); 132 return false; 133 } 134 } 135 136 137 //滑動屏幕找到更多好友 138 function swipeScreenFirst(){ 139 140 //gesture(1000,[500,1500],[500,500]) 141 swipe(500,600,500,100,1000); 142 var i=5; 143 while(true){ 144 if(desc("查看更多好友").exists()){ 145 desc("查看更多好友").findOne().click(); 146 sleep(2000); 147 swipe(500,500,500,278,1000); 148 break; 149 } 150 151 if(i==0){ 152 toastLog("你的好友太少無法偷取"); 153 sleep(2000) 154 back(); 155 sleep(2000); 156 //關閉應用,僅有root權限下有用 157 shell("am force-stop com.eg.android.AlipayGphone",true); 158 159 exit(); 160 } 161 162 i--; 163 } 164 165 } 166 167 168 //滑動屏幕 169 function swipeScreen(){ 170 //滑動一個好友的距離 171 //gesture(1000,[500,1500],[500,500]) 172 swipe(500,500,500,290,1000); 173 174 } 175 176 //偷好友能量 177 function stealEnergy(friendNumber){ 178 //滑動屏幕,找到查看更多好友進入到好友排行榜 179 swipeScreenFirst(); 180 sleep(2000); 181 182 //一個一個偷能量 183 while(friendNumber!=0){ 184 if(findFriendEnergy()){ 185 sleep(2000); 186 collectEnergy(); 187 back(); 188 sleep(1000); 189 swipeScreen(); 190 }else{ 191 swipeScreen(); 192 sleep(1000); 193 } 194 195 friendNumber--; 196 197 } 198 199 }
具體使用方式見下面錄屏: