termux + UIAUTOMETOR2 + django2 實現自動化控制安卓執行腳本 + 群控


這次接到一個任務,要求批量操作安卓手機,數量大概有20台吧,還要求有個中控台,可以查看當前腳本執行情況

思考了下,決定使用termux + UIAUTOMETOR2 + django2 完成

構架如下

服務器(django完成中控+API)<--> 安卓手機(termux來接收和發送信息<-->UIAUTOMETOR2來執行自動化腳本操作)

---------------------------------------------------------------------------------------------------

首先安卓手機安裝termux,建議使用F-Droid安裝(另外termux-api也可以安裝,提供一些系統功能,比如彈個消息什么的)

另外安裝openssh,python3,UIAUTOMETOR2庫來完成環境配置

---------------------------------------------------------------------------------------------------

因為需要用服務器來控制安卓手機,所以需要ssh到termux

現在網上提供的都是用key來登錄ssh,比較麻煩,其實termux也是可以直接用賬號密碼來ssh的

接下去就是操作

#首先是常規升級
apt update
apt upgrade

#然后是安裝需要的軟件
apt install openssh
pkg install termux-auth

#獲取用戶名 比如u0_a150
whoami

#設置密碼,按照要求輸入2次密碼
passwd

#查看自己ip,比如inet addr: 192.168.2.243
ifconfig

#開啟ssh
sshd -p 9000

#電腦端輸入,然后輸入密碼即可
ssh u0_a150@192.168.2.243 -p 9000

接下去是python3 和 UIAUTOMETOR2庫的安裝

#python3安裝
pkg install python3
還有一些依賴庫
pip install six
pip install humanize #UIAUTOMETOR2庫,這個需要從電腦端復制過去 找到電腦端安裝的位置,把文件夾直接復制到termux下的目錄即可完成安裝

一般是在這個位置

/data/data/com.termux/files/usr/lib/python3.7/site-packages

自己電腦的話一般在這個位置

C:\Python37\Lib\site-packages

復制過去就行了

接下去就是安卓端的初始化,將手機用usb線連接到電腦

電腦上執行(需要adb配合,自己可以去下adb的插件,放到python37目錄下即可)

使用python3 -m uiautomator2 init 初始化安卓手機,會安裝一個app,這樣就完成了配置

 測試連接,如果出現如下信息就是配置好了

>>> import uiautomator2 as u2
>>> d = u2.connect('192.168.1.100')
>>> d.info
{u'displayRotation': 0, u'displaySizeDpY': 640, u'displaySizeDpX': 360, u'screenOn': True, u'displayWidth': 1080, u'productName': u'hermes', u'currentPackageName': u'xxxx', u'sdkInt': 21, u'displayHeight': 1920, u'naturalOrientation': True}
>>> 

 

 ---------------------------------------------------------------------------------------------------

接下去是服務端的配置

服務端配置python3 + django2 + paramiko即可

paramiko庫提供ssh操作

---------------------------------------------------------------------------------------------------

使用django搭建一個后台,將手機都配置到服務器,手機上面都使用靜態ip

然后就可以使用ssh連接到各個手機執行自動化腳本操作了,腳本將數據通過API提交到服務器,這樣就完成了數據的手機

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM