1. 程式人生 > 程式設計 >使用auto.js實現自動化每日打卡功能

使用auto.js實現自動化每日打卡功能

使用auto.實現www.cppcns.com自動化每日打卡

疫情原因,需要在家每天定時打卡,每天剛起床的時候避免不了出現注意力不集中或者是看不到app,點不到按鈕什麼的(我瞎說的)。

所以,就想搞一個自動化操作的東西,省去了這勞神費力的每日打卡。

說幹就幹,於是乎就想起了之前雙十一寫的疊貓貓的無障礙,所以這個還是不在話下的。

用到的工具庫:auto.js

因為auto.js需要依賴安卓手機上的無障礙操作。所以目前只支援安卓手機並且需要在安卓6.0以上,這個官方都有詳細介紹,我就不在此過多贅述了。多說一下,這個auto.js作者在19年的時候就不在維護了,所以我選擇的另一個接手auto.js的庫:autox.js,他們兩個都是大同小異的,用哪一個也不影響啦。

實際操作

首先需要保證電腦和手機在同一網路下,並且電腦上安裝vscode,搜尋外掛“auto.js”去安裝。你也可以在手機上編輯程式碼,但是這樣實在是不方便。安裝完成後按下“cmd+shift+P”,輸入“auto”,下面列表裡會出現相關設定,點選"開啟服務",即可在電腦上編輯auto.js程式碼.

手機上需要開啟設定點選“連線到電腦”,輸入電腦ip,即可在電腦端看到新裝置連線的提示。(注意必須首先要在電腦選擇開啟服務後才能連線)

使用auto.js實現自動化每日打卡功能

接下來就可以利用手機端的auto.js對各個頁面進行除錯以及佈局分析了。

寫好程式碼以後點選vscode上的儲存到所有裝置,剛才電腦上的程式碼就同步到手機啦。點選外掛的執行按鈕就可以看到執行的全過程。

對於指令碼的編寫和操作也有大把的教www.cppcns.com程,我只是作為這一個需求而寫的程式碼,也沒有過多深究,有興趣的可以自己去學習。這裡只說一下我遇到的一些問題。

  • 當一個頁面的元件狀態有兩個是一樣的,就需要通過寫死座標來點選了。手機開啟開發人員選項中的“指標位置”就可以清楚的看到當前手指觸控的位置座標啦。
  • 有的時候按鈕的clickable屬性不可用,可以試試click(“需要點選的文字”),會有奇效。

最後,寫完的指令碼可以利用auto.js的“打包應用”進行打包和分發了。

最後的最後,奉上程式碼:

auto()
auto.waitFor();
console.show(true);//開啟控制檯
console.log("i輕工大自動打卡指令碼");
cwww.cppcns.com
onsole.log("version--------1.1"); console.log("autuer---zhaosheng"); app.launch('io.cordova.zhqy') console.log("已開啟app"); sleep(5000); //點選應用服務 var fuwu = text("應用服務").findOnce(); fuwu.click(); console.log("選擇應用服務"); sleep(2000) console.log("點選疫情防控"); click("疫情防控") sleep(2000) // 2.居家學習 className(".view.View").depth(11).desc("home").findOne().click(); console.log("點選居家學習"); // id("home").findOne().click() sleep(1500) //健康日報 // click(222,945) console.log("點選健康日報"); click("健康日報") sleep(2000) //選擇當前日期 // 1.獲取當天日期 console.log("計算當前日期"); var myDate = new Date(); let day = myDate.getDate(); //對應頁面數字 if(day &bXhRoXYlt; 10){ day = "0"+day console.log(www.cppcns.com"當前為:"+day); } // alert(day) click(day) console.log("點選立即打卡"); click("立即打卡") sleep(3000) click("點選獲取當前位置") sleep(2000) click(244,2130) sleep(3000) swipe(550,1925,550,465,2000) swipe(550,2000) sleep(2000) click(493,2095) sleep(2000) click(764,1638)

到此這篇關於使用auto.js實現自動化每日打卡的文章就介紹到這了,更多相關auto.js自動化每日打卡內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!