你不知道的:開發者選項
本文章轉載於搜狗測試
一、你不知道的:除錯GPU過度繪製(Debug GPU overdraw)
(1)什麼是Overdraw?
Overdraw就是過度繪製,是指在一幀的時間內(16.67ms)畫素被繪製了多次,正確的繪製方式應該是一個畫素每次只繪製一次,由於重疊佈局導致一些畫素會被多次繪製,每次繪製都會佔用CPU,當繪製操作超時時,就會出現卡頓現象。
(2)如何開啟工具?
Android系統為測試人員提供了一個簡單的檢測工具,如下圖所示:
該功能會用幾種不同的顏色繪製螢幕,來標識overdraw發生的位置以及程度如何,各種顏色的意義如下:
原色: 意味著沒有overdraw。畫素只畫了一次。
藍色: 意味著overdraw 1倍。畫素繪製了兩次。大片的藍色還是可以接受的(若整個視窗是藍色的,可以擺脫一層)。
綠色: 意味著overdraw 2倍。畫素繪製了三次。中等大小的綠色區域是可以接受的但你應該嘗試優化、減少它們。
淺紅: 意味著overdraw 3倍。畫素繪製了四次,小範圍可以接受。
暗紅: 意味著overdraw 4倍。畫素繪製了五次或者更多。這是錯誤的,要修復它們。
(3)哪裡用得到?
小編之前是測試新聞型別APP的,需要關注新聞列表滾動時的流暢度,使用者需要重複滾動一個列表從而達到獲取新聞的需求,之前不知道原因時都是提交這樣的BUG:“某新聞頻道列表出現卡頓”但是後來知道原因後就提交這樣的BUG:“由於過度繪製原因導致某新聞頻道列表出現卡頓”直接告訴開發原因在哪裡,是不是成就感倍增呢,我們來看下例項圖:
優化之前:
優化之後:
二、你不知道的:不保留活動(Don’t keep activities)
(1)什麼是Activity?
Activity是為使用者提供視覺化介面並可以與使用者互動的元件。
(2)如何開啟?
當然也是在開發者選項中,如下圖:
(3)哪裡用的到?
小記憶體手機測試:當你從Activity A跳轉到Activity B時,Activity A就會被立即銷燬,這一般用來模擬裝置記憶體不足時後臺Activity被銷燬的場景
相容不同ROM:ROM版本繁多各大廠商在形成自己系統風格過程中,也會對Activity管理方式做改動,會銷燬不使用的Activity,我們來看下例項圖:
細心的同學會發現Activity B返回Activity A時,Activity A重新建立了,同時造成了UI顯示異常。
相關文章
- 你知道和你不知道的選擇排序排序
- Android開發者選項中,這29個功能你忽略了嗎?Android
- 你所不知道的10個“Chrome開發者工具”使用技巧Chrome
- Android 開發者選項詳述Android
- 15個必知的Android開發者選項Android
- 開發者選項-顯示指標位置指標
- 你不知道的javascript,你不知道的奧祕JavaScript
- win10開發者選項有什麼用 win10電腦開發者選項怎麼開啟Win10
- 安卓手機怎麼開啟開發者選項?安卓
- 開發者選項-顯示點按操作反饋
- 你不知道的 WebSocketWeb
- 你不知道的CSSCSS
- 你不知道的JavaScriptJavaScript
- JCEF 如何修改右鍵選單項(JCEF在右鍵選單中新增開發者選項-show dev tools)dev
- 10 萬開發者都知道的部署方式,你居然不知道!?內含懸賞活動
- 身為前端開發者,你不能不知道的 Runtime Performance Debug 技巧前端ORM
- [譯] 你不知道的 Node
- 原型—-《你不知道的js》原型JS
- JavaScript之你不知道的thisJavaScript
- 你所不知道的cssCSS
- 你不知道的.gitignoreGit
- 你不知道的Event LoopOOP
- 你不知道的JavaScript(一)JavaScript
- 你不知道的JavaScript(二)JavaScript
- 你不知道的js坑JS
- 你所不知道的 POST
- 你不知道的CSS(三)CSS
- 入行IT為啥建議首選Java?小白學Java你不知道的理由Java
- 觀察下面的選項,選出正確的選項。
- 你不知道的“前海模式”模式
- 你不知道的前端元件庫前端元件
- 你不知道的JS 筆記JS筆記
- 你不知道的Python容器Python
- 你不知道的Java重寫Java
- 你可能不知道的JSJS
- 型別—-《你不知道的js》型別JS
- 你(可能)不知道的web apiWebAPI
- 你可能不知道的htmlHTML