PyAndroidControl:使用python指令碼控制你的安卓裝置

叄公子KCN發表於2018-12-03

寫在前面

有的時候玩遊戲或者幹什麼想寫寫安卓的指令碼,不過用 java 或者 kotlin 寫影象處理什麼的太麻煩了,按鍵精靈的指令碼我也懶得學。adb 倒是可以,但是很多時候要用電腦,又有些不太方便。感覺現在雲手機比較方便吧,比如說:紅手指、愛雲兔這種,我比較喜歡用雲手機這種掛一掛機,在手機上隨時都能看看掛機的進度什麼的。

於是就寫了個基礎的安卓端的接收器,用來接收服務端 python 的控制命令,從而對安卓機進行操控。

連結地址:github.com/nladuo/PyAn…

架構想法

架構比較簡單,有個安卓端和webserver端。

PyAndroidControl:使用python指令碼控制你的安卓裝置
其實就是 App 每隔一段時間上傳截圖給 web 端,然後可以用 python 做一波影象搜尋或者是別的什麼東西隨意,然後返回命令給 App 端,然後 App 執行相應命令。

使用方法

1.安裝PyAndroidControl APP

因為要操控裝置,所以這裡需要授予PyAndroidControl應用root許可權才行。 下載地址:github.com/nladuo/PyAn…

2.按照個人需求修改程式碼

這裡我提供了一個get_commands方法供開發者使用。有兩個引數,第一個token代表登陸時的標籤,用以區分使用者。第二個img_file代表安卓裝置的截圖。

所以只要修改simple-control-server/logics.py檔案即可。

def get_commands(token, img_file):
    """ analyze the screenshot and send
         commands back to android device """
    img_file.save("tmp.png")
    print(token)

    # your adb shell commands
    cmds = [
        'input text "111"',
        'input text "222"',
        'input text "333"',
    ]
    return cmds
複製程式碼

這裡面為了簡單,提供了一個每個一秒自動輸入“111”、“222”、“333”的例子。

效果圖

PyAndroidControl:使用python指令碼控制你的安卓裝置

相關文章