版權聲明:python
本帳號發佈文章均來自公衆號,承香墨影(cxmyDev),版權歸承香墨影全部。shell
每週會統一更新到這裏,若是喜歡,可關注公衆號獲取最新文章。code
未經容許,不得轉載。cdn
昨天發 wm 適配的文章以後,發現好像仍是不方便。每次都須要一次次修改參數,來完成對設備參數的調整。並且一般,咱們都是一個頁面一個頁面開發的,若是能夠一次將一個頁面,在不一樣設備的顯示狀況,截圖出來,應該就會更方便一點。blog
有關 wm 命令相關的內容,不瞭解的能夠先看看以前的文章《當你只有一個設備的時候,如何作好屏幕適配》。圖片
因此我寫了個 Python 的腳本,用的上的就看看,用不上的權當娛樂了。開發
由於 Python 的版本差別,這裏特別說明一下,我這邊的運行環境是 2.7.10。get
利用 Python 寫邏輯腳本仍是很方便的,大概須要用到的就是 Python、adb 命令、wm 命令等等。源碼
先說說思路吧。it
其實邏輯很簡單,大概的步驟以下:
adb shell wm
命令,修改屏幕參數。adb shell screencap
進行截屏。adb pull
命令,複製到本地。邏輯仍是很清晰的,直接上代碼了。
先作一下基本的定義,將不變的命令提取出來,並獲取到當前的腳本的目錄地址。
在初始化的時候,判斷本地是否有 devicescreen 文件夾,若是沒有就建立它。
到最重要的方法了,根據傳遞的參數,修改設備的屏幕信息,並截圖保存到本地。
由於有一些設備上,修改了參數以後設備會有卡頓和刷新的狀況,因此在這些操做以後,都粗暴的等待了一下子,我這裏設定的是 3s。
使用完成以後,在將屏幕 reset 到最初的狀態。
到這裏就已經完成了主要邏輯的編寫,而後只須要配置好咱們須要的設備參數便可。這裏蒐集了比較常見的設備。
完成以後,調用 python start.py
或者在 PyCharm 裏直接運行。最終會把運行的結果,保存在本地的 devicescreen 目錄下。
這是整個項目的結構。
在 devicescreen 目錄下,就能夠看到咱們須要的不一樣設備的截圖了。
這裏我用了掘金的我的主頁頁面,能夠看到在不一樣設備下顯示效果的截屏。
其實 wm 命令,仍是有一些缺陷的,最多見的就是修改了屏幕參數,頁面並無刷新正確,這個時候退出 App 再從新進入就行了。
這裏的使用方式只能做爲一個輔助,若是趕上沒法正確修改的頁面,就須要退出重進的話,這樣一個簡單的腳本就無效了。
因此這個腳本只適用於部分場景,非全部場景都適用。
雖然關鍵代碼文內都有,可是若是你想要源碼的話,能夠在公衆號回覆關鍵字『適配腳本』。
點贊或者分享吧~