Auto.js
的核心參見 https://github.com/hyb1996/Auto.js/tree/master/autojs/src/main/java/com/stardust/autojs
其中runtime.api
的包便是各種api的封裝。
至于apk
打包,參見 https://github.com/hyb1996/Auto.js-ApkBuilder 。
- 這個軟件的ui界面并不是由js寫的。是這個軟件提供了一個可以編寫界面的js環境。這個軟件本身的界面是由Java和Android XML編寫的。
- 這是利用了AccessibilityService的API。參見AccessibilityService的getRootInActivieWindow()函數。
-
common
模塊提供了其他各個模塊的公用類、工具等,例如一些數據結構、View工具類等。是其他各個模塊的依賴。 -
automator
模塊實現了自動操作的大部分內容。包括選擇器的實現、簡單操作的實現、控件節點的封裝等。是autojs模塊的依賴。 - autojs模塊是
Auto.js
的JavaScript
運行環境,包括腳本引擎的封裝,核心運行庫的實現,對JavaScript
層暴露的API,JavaScrip
t和Java
的交互。同時提供了管理運行的JavaScript腳本的服務。 - app模塊是界面、業務邏輯。依賴
autojs
模塊。
- 項目主要需要
Android
基礎,和uiautomator
基礎沒有太大關系。