Android App 性能優化系列結語篇

關於Android App的優化, 從第一篇的計劃開始, 到內存優化的系列文結束, 不知不覺近三個月的時間, 寫了十五六篇相關的博文, 算是對本身的知識的一個系統化, 也但願能給你們一些幫助.android

在此有對此作一個總結.緩存

路線

Android App優化

1, App性能優化要怎麼作

在系列的開篇文中, 咱們聊到了本系列的一個原因, 和當時的一個計劃, 系列也基本是朝着這個這個方向走的.性能優化

2, 性能分析工具

在此介紹了一些慣用的性能分析工具, 包括官方, 第三方的, 內存分析的, UI分析的, 執行時間性能分析等等.網絡

關於工具的使用, 還有一篇番外篇--adb的使用架構

3, App啓動速度優化

第一篇真正動手的優化項目, App的啓動速度優化. 這裏實際上有一個小系列, 爲了將問題說得更清楚, 加入了一篇系列以外的譯文--Application的啓動流程分析, 而後是啓動速度優化的理論實例挑戰.app

4, Layout怎麼擺

介紹了Layout分析的工具, 並以實例說明了其使用. 提出了一些關於Layout優化的建議.工具

5, ANR詳解

從ANR的概念, ANR的產生緣由, 如何避免ANR這幾個角度來"剖析"了下ANR. 提供瞭如何分析ANR的方法, 並深刻分析了ANR的集中產生緣由和其解決之道.性能

6, 消除卡頓

講解了卡頓的產生緣由, 並引入工具實例分析如何避免卡頓.優化

7, 內存優化

這是一個大的子集, 分紅了五篇來寫, 分別包括:cdn

7.1 垃圾回收的基礎知識—GC那些事兒

簡單解析了GC的機制, 旨在讓你們對於垃圾回收有一個理論理論基礎, 對於GC Roots, 活對象, 死對象等有個概念.

7.2 Android是如何管理App內存的

以Android的VM爲基礎, 說明了Android App的內存限制, App切換時的內存管理機制, 進程優先級等.

7.3 內存分析工具詳解

介紹了一系列內存分析工具的使用.

7.4 以一個內存泄露代碼爲例講解內存問題分析的過程

基於上篇的內存分析工具, 對一個內存泄露的實例代碼進行分析, 找出內存泄露的緣由. 這麼一個過程, 實際上也是對於前面理論基礎, 工具使用的一個實踐.

7.5 內存使用小結

算是對內存優化系列的一個小結, 對於常見的內存泄露機器解決方案, 內存使用等有一個概覽.

着重對於內存泄露的分析和解決有一個說明.

8, 電量省着用

電量使用優化是一個不太被關注的優化, 仍是以工具入手, 介紹電量使用的分析方式, 並給出常見的耗電項極其優化方案.

9, 高效網絡請求

從網絡流量對用戶的影響切入, 介紹了App網絡的分析, 各方面網絡優化的方案等.

對於網絡緩存的使用, 引用了MVP架構Github客戶端之網絡緩存篇.

說明

系列開篇中所言, 本系列能夠算是一個基於實際線上App的性能優化的筆記. 並不是App優化, 就算是單說性能優化, 此係列也並無能涵括全部.

App的優化是一個持續的工做, 須要咱們持續的關注.

實際上, 關注代碼質量, 也是App優化的一個方面.

結語

照例, 加個結語, 算是對本身的一個小結, 有些東西也但願分享出來你們共勉.

首先, 對於寫文, 一律的態度是相對嚴肅的, 總認爲, 畢竟的對外傳輸知識, 內容可能會少, 但不但願有錯. 但願沒有把你們帶到坑裏~~哈哈.

而後, 實際上一直強調, 授之以漁. 重要的是教方法, 因此, 能夠看到這個系列中不少是在講解一些工具的使用, 結合案例的分析過程. 並不是單純的擺出性能優化應該怎麼作balabala, 一二三四五六點.

再而後, 並不是沒有理論. 正所謂知其然知其因此然, 引入了好幾篇的理論文章做爲銜接, 是想讓你們能在同一個理論基礎上去加深對工具使用和分析過程的理解.

最後, 上面幾點其實都是廢話, 你們點贊就好.

共勉的話
學知識, 知其然知其因此然
講知識, 授之以漁而非魚

相關文章
相關標籤/搜索