新聞中心
一、前言

創(chuàng)新互聯(lián)建站一直秉承“誠(chéng)信做人,踏實(shí)做事”的原則,不欺瞞客戶,是我們最起碼的底線! 以服務(wù)為基礎(chǔ),以質(zhì)量求生存,以技術(shù)求發(fā)展,成交一個(gè)客戶多一個(gè)朋友!為您提供成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、成都網(wǎng)頁(yè)設(shè)計(jì)、成都小程序開(kāi)發(fā)、成都網(wǎng)站開(kāi)發(fā)、成都網(wǎng)站制作、成都軟件開(kāi)發(fā)、app開(kāi)發(fā)定制是成都本地專業(yè)的網(wǎng)站建設(shè)和網(wǎng)站設(shè)計(jì)公司,等你一起來(lái)見(jiàn)證!
昨天發(fā) wm 適配的文章之后,發(fā)現(xiàn)好像還是不方便。每次都需要一次次修改參數(shù),來(lái)完成對(duì)設(shè)備參數(shù)的調(diào)整。而且通常,我們都是一個(gè)頁(yè)面一個(gè)頁(yè)面開(kāi)發(fā)的,如果可以一次將一個(gè)頁(yè)面,在不同設(shè)備的顯示情況,截圖出來(lái),應(yīng)該就會(huì)更方便一點(diǎn)。
有關(guān) wm 命令相關(guān)的內(nèi)容,不了解的可以先看看之前的文章《當(dāng)你只有一個(gè)設(shè)備的時(shí)候,如何做好屏幕適配》。
所以我寫(xiě)了個(gè) Python 的腳本,用的上的就看看,用不上的權(quán)當(dāng)娛樂(lè)了。
因?yàn)?Python 的版本差異,這里特別說(shuō)明一下,我這邊的運(yùn)行環(huán)境是 2.7.10。
二、利用 Python 去修改參數(shù)并截圖
利用 Python 寫(xiě)邏輯腳本還是很方便的,大概需要用到的就是 Python、adb 命令、wm 命令等等。
先說(shuō)說(shuō)思路吧。
其實(shí)邏輯很簡(jiǎn)單,大概的步驟如下:
利用 Python 去調(diào)用 adb shell wm 命令,修改屏幕參數(shù)。
再使用 adb shell screencap 進(jìn)行截屏。
將截到的圖片,利用 adb pull 命令,復(fù)制到本地。
根據(jù)配置的設(shè)備信息,重復(fù)以上邏輯。
邏輯還是很清晰的,直接上代碼了。
先做一下基本的定義,將不變的命令提取出來(lái),并獲取到當(dāng)前的腳本的目錄地址。
在初始化的時(shí)候,判斷本地是否有 devicescreen 文件夾,如果沒(méi)有就創(chuàng)建它。
到最重要的方法了,根據(jù)傳遞的參數(shù),修改設(shè)備的屏幕信息,并截圖保存到本地。
因?yàn)橛幸恍┰O(shè)備上,修改了參數(shù)之后設(shè)備會(huì)有卡頓和刷新的情況,所以在這些操作之后,都粗暴的等待了一會(huì)兒,我這里設(shè)定的是 3s。
使用完成之后,在將屏幕 reset 到最初的狀態(tài)。
到這里就已經(jīng)完成了主要邏輯的編寫(xiě),然后只需要配置好我們需要的設(shè)備參數(shù)即可。這里搜集了比較常見(jiàn)的設(shè)備。
完成之后,調(diào)用 python start.py 或者在 PyCharm 里直接運(yùn)行。最終會(huì)把運(yùn)行的結(jié)果,保存在本地的 devicescreen 目錄下。
這是整個(gè)項(xiàng)目的結(jié)構(gòu)。
在 devicescreen 目錄下,就可以看到我們需要的不同設(shè)備的截圖了。
這里我用了掘金的個(gè)人主頁(yè)頁(yè)面,可以看到在不同設(shè)備下顯示效果的截屏。
三、小結(jié)
其實(shí) wm 命令,還是有一些缺陷的,最常見(jiàn)的就是修改了屏幕參數(shù),頁(yè)面并沒(méi)有刷新正確,這個(gè)時(shí)候退出 App 再重新進(jìn)入就好了。
這里的使用方式只能作為一個(gè)輔助,如果遇上無(wú)法正確修改的頁(yè)面,就需要退出重進(jìn)的話,這樣一個(gè)簡(jiǎn)單的腳本就無(wú)效了。
所以這個(gè)腳本只適用于部分場(chǎng)景,非所有場(chǎng)景都適用。
雖然關(guān)鍵代碼文內(nèi)都有,但是如果你想要源碼的話,可以在公眾號(hào)回復(fù)關(guān)鍵字『適配腳本』。
【本文為專欄作者“張旸”的原創(chuàng)稿件,轉(zhuǎn)載請(qǐng)通過(guò)微信公眾號(hào)聯(lián)系作者獲取授權(quán)】
文章標(biāo)題:審UI還在找設(shè)備一個(gè)一個(gè)看效果?一段腳本都搞定
文章源于:http://www.fisionsoft.com.cn/article/djgcdsj.html


咨詢
建站咨詢
