編輯點(diǎn)評(píng):解放雙后,自動(dòng)化腳本軟件
不需要root就可以輕松使用的手機(jī)JavaScript自動(dòng)化軟件,Auto.js可以自行制作js完成一些頁面上的操作,特別適合淘寶京東這類做任務(wù)活動(dòng),小編這里附上auto.js pro破解版,沒有廣告,解鎖了vip功能,去掉了更新。
破解說明
去廣告,解鎖vip,去更新。
簡(jiǎn)單易用。
軟件特色
Auto.JS是Android平臺(tái)上的JavaScript自動(dòng)化工具。
它的本質(zhì)是可執(zhí)行自己編寫的簡(jiǎn)易Javascript腳本的,尤其可以在開啟“無障礙模式”的情況下對(duì)其他App進(jìn)行一些操作的一個(gè)Android App,便于進(jìn)行自動(dòng)化操作。學(xué)習(xí)成本非常低。
Auto.JS已被黑產(chǎn)廣泛使用,以至于作者關(guān)閉了官方下載通道。
auto.js怎么導(dǎo)入腳本
開啟無障礙服務(wù)和懸浮窗權(quán)限
點(diǎn)右下角導(dǎo)入腳本
如果是文件形式,點(diǎn)擊導(dǎo)入,然后選擇下載的JS文件即可
如果是代碼形式,點(diǎn)擊文件,新建一個(gè)腳本,然后把代碼粘貼進(jìn)去即可
主腳本是main.js,如果名稱不一樣可以改,創(chuàng)建成功會(huì)到如圖界面,運(yùn)行的話點(diǎn)上面的右三角 播放按鈕就可以了,記得有些操作是需要無障礙權(quán)限的,要去設(shè)置下。
項(xiàng)目里可以包含多個(gè)腳本文件,可以單獨(dú)運(yùn)行一個(gè)文件,點(diǎn)文件后面的播放三解按鈕就可以,或者點(diǎn)編輯按鈕,在編輯界面上也有運(yùn)行播放按鈕,可以在編輯完直接看效果。
Auto.js快速入門實(shí)戰(zhàn)教程
Auto.js是一款安卓手機(jī)應(yīng)用,和微信一樣,安裝在手機(jī)上使用
Auto.js是一款自動(dòng)化軟件,根據(jù)腳本內(nèi)容便可以自動(dòng)地執(zhí)行相關(guān)的操作,并且手機(jī)無需root
Auto.js的腳本需要使用JavaScript編寫
另外,需要說明的是,文章面向有編程基礎(chǔ)但不了解Auto.js的人群。文章以開發(fā)自動(dòng)完成淘寶領(lǐng)喵幣任務(wù)的腳本舉例,對(duì)代碼講解,旨在讓您可以快速上手開發(fā)Auto.js腳本。
手機(jī)安裝auto.js后,需要打開無障礙模式(為了腳本能執(zhí)行)和懸浮框(為了查看控件信息)
接下來需要寫腳本了,你可以
在vscode上寫腳本,寫好后發(fā)給手機(jī),在Auto.js應(yīng)用中加載運(yùn)行
在vscode上寫腳本,電腦與手機(jī)在同一局域網(wǎng),通過安裝auto.js的vscode插件,實(shí)現(xiàn)在vscode上運(yùn)行,手機(jī)就會(huì)相應(yīng)執(zhí)行腳本
在手機(jī)的Auto.js應(yīng)用中直接碼代碼(不提倡)
實(shí)戰(zhàn)開始
1.打開淘寶->點(diǎn)擊領(lǐng)喵幣按鈕
為了編寫腳本簡(jiǎn)單,淘寶預(yù)先打開喵鋪主頁
Auto.js無需root,但是需要對(duì)該應(yīng)用開啟無障礙模式,開啟后才可以進(jìn)行屏幕點(diǎn)擊等操作auto.waitFor()表示直到檢查該應(yīng)用開啟無障礙后才執(zhí)行其后面的代碼,否則一直卡在這里,一般放到腳本的第一行
launchApp()可以打開對(duì)應(yīng)應(yīng)用,由于不同手機(jī)響應(yīng)速度不同,本代碼讓它睡眠3s。
定位組件是autojs的最常見的操作,這很類似前端的定位dom元素。在任何點(diǎn)擊之前都需要找到對(duì)應(yīng)的組件,這不同于點(diǎn)擊某像素位置,點(diǎn)擊組件更能適配不同分辨率的手機(jī)。在auto.js中通過各種條件選取到的控件稱為UiSelector。那么篩選條件是如何確定呢?打開Auto.js應(yīng)用的懸浮窗,在喵鋪主頁,點(diǎn)擊Auto.js懸浮窗后選擇出現(xiàn)的藍(lán)色按鈕,點(diǎn)擊布局范圍分析后選擇領(lǐng)喵幣按鈕查看控件信息,你就能看到如圖2所示的信息。
click()表示點(diǎn)擊該元素。
toast()表示展示一個(gè)消息框。
2.點(diǎn)擊去進(jìn)店/去瀏覽
//開始執(zhí)行任務(wù)
execTask();
function execTask() {
while(true) {
var target = text("去進(jìn)店").findOnce() || text("去瀏覽").findOnce();
if (target == null) {
toast("任務(wù)完成");
break;
}
target.click();
sleep(3000);
//瀏覽網(wǎng)頁20s
viewWeb(20);
back();
sleep(1000);
}
}
相信現(xiàn)在你看這段代碼能看懂了,viewWeb是一會(huì)兒我們要寫的函數(shù),目的是模擬瀏覽網(wǎng)頁20s的操作,雖說淘寶要求15s就行了,但是可能部分手機(jī)加載耗時(shí)比較多,所以多寫了5s。當(dāng)判斷任務(wù)欄有"去進(jìn)店"、"去瀏覽"的組件時(shí),點(diǎn)擊跳轉(zhuǎn)至瀏覽廣告,瀏覽完畢后,返回至任務(wù)欄頁面,循環(huán)執(zhí)行該操作直到找不到"去進(jìn)店"、"去瀏覽"的組件結(jié)束(任務(wù)完成后按鈕文字會(huì)變成"已完成")。
3.瀏覽廣告
function viewWeb(time) {
gesture(1000, [300, 600], [300, 300]);
var cnt = 1;
while(true) {
var finish = desc("任務(wù)完成").exists() || textStartsWith("已獲得").exists();
if (finish || cnt > time) {
break;
}
sleep(1000);
cnt += 1;
}
//模擬返回鍵,返回到任務(wù)欄頁面
back();
}
終于到了最后的環(huán)節(jié)了,函數(shù)的參數(shù)為當(dāng)前頁面的最大停留時(shí)間(防止意外而一直停留該頁面)。
瀏覽廣告完成的標(biāo)志:
當(dāng)前頁面出現(xiàn)"任務(wù)完成"或"已獲得*****"的組件
位于當(dāng)前頁面的時(shí)間大于所設(shè)定的最大限制
gesture是指屏幕滑動(dòng)操作,這是本文唯一涉及屏幕像素的語句。gesture(duration, [x1, y1], [x2, y2]表示用duration的時(shí)間,從(x1,y1)點(diǎn)滑到(x2,y2)點(diǎn),代碼中表示如圖用1s從黃點(diǎn)滑向紅點(diǎn),故是上滑操作瀏覽廣告。
本次淘寶的活動(dòng)最開始滑動(dòng)一次,之后等著時(shí)間夠了即可,故代碼中沒有再額外滑動(dòng)。在瀏覽廣告完畢后back()模擬返回鍵返回值任務(wù)欄頁面。
你也許會(huì)注意到這段代碼定位組件用到了desc(),之所于用desc是因?yàn)樵摽丶膁esc信息是"任務(wù)完成",還記得如何查看控件信息吧?總之,想定位控件,就先去查它的控件信息。
更新日志
8.8.20-0更新說明
dex加密、snapshot等增強(qiáng)的加密方式、自定義簽名、更小的打包體積
可視化U編輯、專業(yè)級(jí)單步調(diào)試、全新界面與編輯器
新增大量AP,壓縮、加解密、OCR、加速找色等,修復(fù)大量問題
V9版本將支持 Node.js,敬請(qǐng)期待
熱門評(píng)論
最新評(píng)論