15個必知的Android開發者選項
1.Stay awake
充電時保持屏幕喚醒,開發的時候,時不時的鎖屏真是夠了,開啓它後只要插着USB線就不須要總去解鎖屏幕啦。
2.Select runtime(Dalvik or ART)
ART runtime下你的應用會更加絲滑,目前高版本的Android上已經直接是ART runtime了,但做爲Android開發也許須要保證你的應用在兩種runtime下都能正常運行,這多是測試時須要更多考慮的。
3.Process stats
裏面有關於當前運行進程的一切信息,對於通常用戶,它就是一堆無心義的數字,對於Android開發人員來講,調試時這些信息也許能夠幫你大忙。
4.USB debugging
這個無需介紹,不開它怎麼調試呢?
5.Allow mock locations
當你的應用須要用到GPS功能,獲取位置信息時(好比天氣應用),能夠經過它搭配一些位置模擬應用,模擬全球任何地點。
6.Show surface updates
在界面繪製時,閃爍提醒,開啓它後簡直能閃瞎你的眼睛,但有時候咱們須要精確知道具體的界面繪製細節時,不得不須要忍受這種折磨。
7.
Show layout bounds
顯示佈局格子,當你看到一個應用有很棒的界面效果,想知道它是怎麼佈局的,開啓這個功能便可。我更經常使用的使用場景是:每當有PM過來問我人家這個界面是Native實現的,仍是相似Hybrid方案的Web實現時,我就讓他開啓這個功能,WebView是一個總體的格子,Native View是各類小格子組合而成。除非本身重繪實現自定義View,通常複雜佈局也不會這麼幹。
8.Force RTL layout direction
強制RTL佈局,RTL也就是Right To Left,阿拉伯國家通常有這種文化,相似古時候的中國,文字從右往左讀,包括界面佈局也是從右往左的,感受操做習慣都跟咱們是鏡像的,若是你跟我同樣不幸須要作這種坑爹適配的話,這也是必須掌握的技能。
9.Animation scale
動畫的尺度、速度調整也是頗有用的功能,
尤爲在實現複雜的組合動畫效果時,調慢點能夠看得更清楚,固然你能夠在本身代碼裏調慢,但每次改代碼從新build很麻煩對不對?並且若是是PM走過來讓你研究一下某款App的酷炫動畫效果呢?
10.Simulate secondary displays
它容許你模擬不一樣屏幕尺寸下應用的表現,IDE裏雖然也有相似的功能,可那畢竟只是個靜態的效果。
11.Debug GPU overdraw
過分繪製有時是沒法避免的,Android建議是不要超過一次過分繪製,也就是能夠是藍色的,不能綠了。
12.Strict mode enabled
嚴苛模式下,當應用作了一些影響性能的事情,屏幕會閃一下提醒你。你
也能夠在代碼裏爲本身的應用開啓嚴苛模式,一旦發現一些性能問題,就會有詳細Log輸出,爲避免影響線上用戶,建議只在Debug模式下開啓。
13.
Show CPU usage
在你屏幕右上角顯示一個小窗口,提示當前CPU的各類信息,在性能調試時會有一些幫助,看是不是CPU的負載太高致使了性能問題。
14.
Profile GPU rendering
開啓後,會在下方顯示一張實時繪製圖,記住
那條綠線是性能流暢與否的底線,超過的時刻就會出現掉幀,就會有卡頓的感受,界面性能調優的一個最重要指標就是
將全部界面操做盡可能優化到那條綠線如下。
15.Don't keep activities
開啓這個選項後,當你從Activity A跳轉到Activity B時,Activity A就會被當即銷燬,這通常用來模擬設備內存不足時後臺Activity被銷燬的場景,若是你的應用能作到開啓它時功能仍基本正常,說明代碼設計得比較合理,不一樣Activity之間的耦和很低,對於複雜業務的應用來講,能作到這點真心不容易。
業餘版解釋
第一項:提交錯誤報告
將本機上安卓系統的出錯日誌以及硬件設備信息發送給谷歌。建議:我們固然不泄露本身隱私了,毫不使用!
第二項:桌面密碼備份
設置或更新桌面完整備份的密碼。建議:不必設置,誰動你的備份~
第三項:不鎖定屏幕
說明文字已經很清楚了:充電時屏幕不會休眠。建議:關閉
第四項:啓用藍牙HCI信息收集日誌
藍牙互傳文件會被記錄日誌。建議:藍牙都不多用到了,這個日誌就更不必記錄了
第五項:進程統計信息
安卓4.4新增給力功能,每一個進程的運行時長百分比,ram使用率,相關後臺服務統計狀況一目瞭然。這纔是真正意義上的任務管理器,大讚!
第六項:USB調試
嗯,怎麼介紹它呢?反正頗有用就是了,容許外部程序尤爲是PC端程序經過adb命令管理手機。安卓系統最有趣也是最吸引人的開放性就是由它控制的。建議:必開,再也不多解釋!
第七項:撤銷USB調試受權
顧名思義,撤銷全部已鏈接過的電腦調試受權,下次鏈接又要從新安裝驅動。建議:不嫌麻煩的能夠點擊確認。
第八項:電源鍵菜單錯誤報告
也是意思很清晰明白了。建議:同樣毫不使用!
第九項:容許模擬地點
真正爲開發人員設置的一個選項。軟件開發人員對開發的某些定位軟件(通常爲地圖軟件),作測試的時候使用的,功能是模擬手機目前所處的位置(好比手機當前實際位置在中國,但測試軟件時要求測試條件爲美國,就可使用該功能進行測試軟件模擬定位)。建議:沒事就別開了。
第十項:選擇調試應用
一樣的如假包換的開發者選項。建議:無視吧
第十一項:顯示觸摸操做
很好玩的一個選項,開啓後,手指點擊的地方就顯示一個小圓點。我試了試五個手指同時放上去,果真就是五個小圓點(我是有多無聊。。。)。建議:玩玩還能夠,平常使用就別開了。
第十二項:指針位置
以十字橫縱座標的方式顯示你觸摸的位置,若是是滑動的話,就是一條線的軌跡。建議:裝B可用,日常關閉
第十三項:顯示屏幕更新
當滾動屏幕或觸控或者系統自動刷新使得屏幕上的某塊區域從新繪製時,該區域閃爍。建議:別開,容易亮瞎我們的24k鈦合金眼。
第十四項:顯示佈局邊界
顯示當前頁面各個組件的邊界框架信息,對於開發人員參考好的app設計有些幫助。建議:關閉。
第十五項:窗口動畫縮放、第十六項:過渡動畫縮放、第十七項:動畫程序時長調整
這三項決定了你對整個ROM的動態感官體驗。好比啓動app、桌面滑屏、確認框的彈出等,有了動畫就會顯得很順滑以及和諧。關閉了或調節比例越低,會顯得切換動做較爲生硬,但好處是對系統資源佔用就會下降。建議:保持前兩個爲0.5x,最後一個爲1x,在性能和體驗中間取個平衡。
第十八項:模擬輔助顯示設備
不明白用途。建議:不要動,保持原樣。
第十九項強制GPU渲染
值得重點介紹的一個選項。安卓的軟件應用的界面可使用cpu或gpu渲染,包括桌面。因爲gpu處理圖形比cpu好,因此gpu渲染應用的界面會更流暢,同時減輕cpu的負擔。gpu強制渲染就是hwa(hardware acceleration硬件加速)的一種,可以獲得更好的優化。
但強制gpu也是有缺陷的。第一是強制GPU加速功能會增長功耗,下降待機時間。第二是,部分舊程序自己不支持gpu渲染,沒有硬件加速hwa的就會出現崩潰。比較老的程序由於SDK版本低不支持gpu加速,或者開發時默認不開啓gpu渲染,趕上gpu強制渲染就會出現問題。建議:我的認爲在如今開啓和關閉都沒有什麼問題,看我的喜愛,我是開啓的,也沒發現什麼問題。
第二十項:顯示GPU視圖更新
屏幕上的區域更新時閃爍響應的屏幕區域各類閃爍。建議:關
第二十一項:顯示硬件層更新
硬件層更新...哪會有更新,因此你勾選與不勾選沒有什麼意義。建議:沒意義的就關了吧。
第二十二項:調試GPU過分繪製
當使用GPU繪圖時,在屏幕上繪製不一樣的顏色來代表過分繪製的狀況。建議:關閉,這麼多藍藍綠綠紅紅的誰受得了。
第二十三項:調試非矩形剪裁操做
這個選項真沒明白,開啓與關閉都沒什麼變化,估計是深刻到安卓系統核心的開發人員才關注。建議:關閉。
第二十四項:強制啓用4x MSAA
4倍抗鋸齒,遊戲達人應該對此很熟悉。通過小貝實測,對於暢玩的GPU來講,開啓此選項不會明顯的增長手機的發熱量,對於續航也影響不大,固然這是創建在個人遊戲時長比較短的狀況下。但對畫質的提高仍是蠻明顯的,地鐵跑酷、極品飛車,遊戲畫面的邊緣都有了明顯改善,更爲細膩圓潤。建議:遊戲達人,開;普通用戶,隨意。
第二十五項:停用HW疊加層
停用的話,全部應用將共享視頻內存,將不會常常檢查碰撞與裁剪以顯示一個合適的圖像,將會耗費大量處理能力。而HW疊加層容許應用有單獨的視頻內存,性能天然要好些。建議:不勾選
第二十六項:嚴格模式已啓用
在你打開某個應用後,點返回退出但在進程中仍然運行,長時間後屏幕會閃爍提示你在主線程上仍是正在運行的應用程序。
第二十七項:顯示CPU使用狀況
頗有用的一個選項,開啓後在右上角最上層顯示cpu當前正在處理的進程。建議:關閉。
第二十八項:GPU呈現模式分析
很是有趣的一個選項,不過真的是開發者選項。用來調試應用,須要結合adb shell dumpsys gfxinfo your_package 命令來使用。能夠用來測量某個app的幀速率,例如列表視圖滾動的時候。建議:非開發者關閉。
第二十九項:啓用OpenGL跟蹤模式
又一個如假包換的開發者選項,圖形視角效果器,是手機制做圖片軟件的輔助工具,好比ps3D立體圖,須要啓用這個工具才能實如今編輯過程當中的圖片旋轉,放大縮小復位等。建議:非開發者關閉。
第三十項:不保留活動
網上有些教程說開啓這個選項會對解決例如打開通信錄等操做的卡頓現象有幫助,通過實測沒什麼做用。我的感受保留活動就和保留IE的緩存同樣,是有用的。建議:不勾選。
第三十一項:後臺進程限制
自定義設置後臺程序的進程限制。建議:這種系統級的東西就留給系統去處理吧,我們本身設置的也許起到反面影響。保留「標準限制」便可。
第三十二項:顯示全部「應用程序無響應」(ANR)
當app出現FC(強制關閉)錯誤時,提示給用戶知曉。建議:不必開啓,提示咱們也作不了什麼,反正就是強退。
2018-1-2