sponsored links

APP啟動效能最佳化

一、淺談APP啟動效能最佳化原因

1、引起效能問題的原因

隨著專案不斷的快速迭代,往往會造成App啟動卡慢現象,因為可能在App主程序啟動階段或者在主介面啟動階段放了很多初始化其他業務的邏輯,而這些業務落地可能一開始並不需要用到;

2、為什麼要做啟動速度最佳化

App啟動卡慢會影響一個App的解除安裝率和使用率;

啟動速度快會給人一種輕快的感覺,減少使用者等待時間;

如果一個App從點選桌面圖示到看到主介面花了10秒,請問你能接受麼?忍耐不好的估計直接就解除安裝了,或者沒等開啟就直接Home鍵按出去,然後殺程序了;這樣一來App解除安裝率提升了,使用率下降了。所以對於有大量使用者的App來說,這些效能細節是很重要的;

APP啟動效能最佳化工具的選擇

作為APP的開發者,我使用的一直都是一款友盟+軟體,U-APM 是友盟+推出的App穩定性監控、效能監控和雲真機測試平臺。透過輕量級的整合接入即可擁有實時、可靠、全面的應用崩潰、ANR、自定義異常等捕獲能力,及卡頓、啟動分析等效能能力,支援多場景、多通道智慧告警監控,幫助開發者高效還原異常、卡頓使用者的訪問路徑和業務現場,縮短故障排查時間。

二、分析怎麼做啟動最佳化

1、啟動過程簡單分析

App從點選桌面圖示到我們看到App的主介面整個過程中經過了哪些步驟,哪些地方是我們可以最佳化的地方;

2、從啟動過程找出最佳化點

App啟動過程中我們最佳化的地方包括主程序啟動流程和主介面啟動流程,主程序啟動就是Application的建立過程,主介面啟動就是MainActivity的建立過程;

只需要分別對這兩個部分進行最佳化即可:

Application中attachBaseContext最早被呼叫,隨後是onCreate方法,儘量在這兩個方法中不要有耗時操作;

MainActivity中重點關注onCreate,onResume,onWindowFocusChange;

三、啟動最佳化步驟

1、Application中加入非同步執行緒

是把不必要提前做的操作放到非同步執行緒中去做,也就是我們經常做的非同步載入;

2、主頁面加入非同步執行緒和延遲載入功能

與Application的最佳化思路一樣,也是封裝onSyncLoad和onAsyncLoad方法對現有程式碼進行一個分類,但是這兩個方法的呼叫時機要晚一點,是在主介面首屏繪製完成的時候呼叫。這個步驟也需要new一個Thead,屬於額外的開銷,不過這不影響我們整體效能;

3、態載入佈局:主佈局檔案最佳化

把主介面中不需要第一次就用到的佈局全部使用動態載入的方式來處理,使用ViewStub或者直接在使用時動態addView的方式;

4、主佈局檔案深度最佳化

如果做了上面這些最佳化還是會發現進入主介面還是有些慢,那麼需要重點關注主佈局檔案了。主佈局檔案的複雜度直接影響到了Activity的載入速度,這個時候需要對主佈局檔案進行深度優化了;

Activity在載入佈局的時候,會對整個佈局檔案進行解析,測量(measure),佈局(layout)和繪製(draw),所以設計簡單合理的佈局尤為重要。幾個重要的最佳化如下:

●減少佈局層級

●減少首次載入View的數量

●減少過度繪製

5、頁面功能的分模組化和懶載入

一個頁面上有很多功能模組,最好每個功能模組都單獨的分開,模組之間用介面進行資料溝通;

按需載入所需要的功能,不要開啟一個頁面都載入所有的功能;

載入完所需要的功能,如果是一次性載入不需要保持在記憶體中,儘快銷燬掉,形成良好的習慣。

APP啟動效能最佳化是一條持續之路,透過最佳化我們可以瞭解到影響啟動效能的因素有哪些,這樣我們平時在編碼的過程中就會多注意自己的程式碼效能。開發者可利用友盟+U-APM對APP啟動進行監控,另外友盟+U-APM還提供雲真機測試能力,助力開發者從研發測試質量驗收到線上問題復現排查,保障應用品質,提升測試效率。在雲真機測試期間自動採集崩潰資訊,提供詳盡的崩潰報告協助篩查,真正實現監控測試全流程深度打通。

分類: 汽車
時間: 2022-02-07

相關文章

學習秘籍,乾貨分享:做到3個認真,孩子一般變優秀,優秀變學霸

學習秘籍,乾貨分享:做到3個認真,孩子一般變優秀,優秀變學霸
很多學生和家長總是想尋求學習的秘籍和捷徑,像武俠小說的主人公一樣,因為某種奇遇,得到武術秘籍,功力大漲,成為武林高手.孩子掌握了學習秘籍之後,成績迅猛提高,成為學霸.秘籍有沒有?答案是有,大道至簡,每 ...

凱特年輕時梨渦淺淺,笑起來很美,如今梨渦變溝壑,王子也禿了頭

凱特年輕時梨渦淺淺,笑起來很美,如今梨渦變溝壑,王子也禿了頭
自從戴安娜王妃香消玉殞後,威廉王子就成了媒體的重點關注物件,從他12歲開始,"誰會成為未來的王妃"就成了英國上下關注的焦點. 威廉王子的桃花運和父親查爾斯比起來有過之而無不及,他的 ...

吳鎮宇兒子發福、郭濤兒子變壯、小瀋陽女兒變美,昔日萌娃大變樣

吳鎮宇兒子發福、郭濤兒子變壯、小瀋陽女兒變美,昔日萌娃大變樣
剛過完中秋,香港演員吳鎮宇的兒子費曼在個人社交平臺,曬出了自己的生日聚會照. 儘管爸爸吳鎮宇未在場共同慶祝,不過有眾多親友陪伴,還收到了動漫玩偶和萬元定製手錶禮物,想必費曼能減少些許遺憾. 透過現場照 ...

珠穆朗瑪峰會越長越高嗎?氣候變暖將導致珠穆朗瑪峰變矮嗎?
珠穆朗瑪峰是世界第一高峰.在距今2億多年前的三疊紀,珠穆朗瑪峰所在的喜馬拉雅山地區還是煙波浩渺的古地中海的一部分.直到5000萬年前的第三紀時期,喜馬拉雅山地區才由於強烈的造山運動從海洋中升到陸地上. ...

iPhone 13 首發評測:變強了,還更親民了?

iPhone 13 首發評測:變強了,還更親民了?
拿到 iPhone 13 系列之後,我們第一時間模仿蘋果官方短片<Whodunnit>的風格,也拍了個小片段,旨在體驗蘋果重點宣傳的電影效果模式. 不過在深入研究這一功能之前,我們還是先來 ...

提醒:3個因素,是導致暗沉和色斑的“元兇”,想要變美注意遠離

提醒:3個因素,是導致暗沉和色斑的“元兇”,想要變美注意遠離
愛美是人的天性,自古以來,人們對美麗有無數種表達方式,但是仔細來看,從膚如凝脂到粉妝玉砌,都跟膚白脫不開關係."一白遮百醜",由此可見,變白的確是變美的第一步,而且也是可以依靠後天 ...

開啟銅錢草生長的“小機關”,不黃葉,一盆可以變十盆

開啟銅錢草生長的“小機關”,不黃葉,一盆可以變十盆
前幾天有個花友問,為什麼她的銅錢草越養越少了?因為從6月開始,銅錢草就不斷有黃葉出現,發現黃葉就及時剪掉,結果現在只有稀稀拉拉的十幾片,看上去好難看!銅錢草越養越少?開啟銅錢草生長的"小機關 ...

前車變道意圖動作解讀,真假變道一眼識別法,教你如何應對

前車變道意圖動作解讀,真假變道一眼識別法,教你如何應對
我車道前車,行駛速度略快於第二車道灰色轎車,我可以等待前車與灰色轎車拉大距離後,再擇機向右變道. 灰色轎車已經出現在右側後視鏡的外邊緣內, 隨著右轉燈的開啟,灰色轎車在鏡面中向左移動,這是因為我車速快 ...

「案例分析」49歲的李女士,PSV面部提升後,脖子怎麼也變長了?

「案例分析」49歲的李女士,PSV面部提升後,脖子怎麼也變長了?
關於PSV面部提升案例的釋疑篇. 前幾天,發了這麼一張案例圖片: 這是49歲的李女士,PSV面部提升術前術後一個月的效果對比.看了不少人的評論,很多人都說改變很大,看著不像一個人. 確實,和李女士術前 ...

什麼樣的長相特點會顯“土味”?女明星都是怎樣悄悄變精緻的?

什麼樣的長相特點會顯“土味”?女明星都是怎樣悄悄變精緻的?
什麼樣的長相特點會顯"土味"?為什麼有的人長得挺好看,就是有股土氣感? 縱觀娛樂圈,有不少女星都在過往幾年裡找到了自己的最佳定位.原來看著沒什麼顯山露水的特質,但是後期變化真的給人 ...

如果孫悟空當年選的是36變,他能否戰勝二郎神?你聽菩提祖師說啥

如果孫悟空當年選的是36變,他能否戰勝二郎神?你聽菩提祖師說啥
提及孫悟空,很多讀者都能娓娓道來,他是<西遊記>裡的人物.由於孫悟空這個角色太過於深入人心,以至於如今很多書籍.電影.遊戲都圍繞"孫悟空"大做文章,可見孫悟空的魅力的確 ...

孩子頭髮變白先別慌!一文告訴你掛哪個科室

孩子頭髮變白先別慌!一文告訴你掛哪個科室
兒童頭髮白掛面板科.小兒內科或者中醫科都可以.如果年齡過小的兒童出現白髮,多為遺傳因素或者缺失營養等因素導致. 兒童頭髮白一般可以到面板科就診,通常兒童頭髮的顏色均是與毛幹部分的黑色素細胞有關,如果黑 ...

把握三個關鍵點,釣鯉變的不再難

把握三個關鍵點,釣鯉變的不再難
9月20日,週一,農曆八月十四,陰轉多雲,20-25℃,地點:湯集閘,首獲龍河野鯉一尾. 7月份以來,磯釣新龍河也有四五次了,始終沒有碰到鯉魚,有點奇怪.為什麼要說奇怪,因為同樣的季節,同樣的地點,同 ...

多肉變胖純屬正常,我的變胖卻是工傷

多肉變胖純屬正常,我的變胖卻是工傷
感謝作者[澳洲愛肉人]的原創獨家授權分享 投稿日期:2021-09-17 編輯整理:[多肉植物百科]百科君 座標:澳大利亞 珀斯 其實這個題目早就想到了,不過今年的珀斯彷彿天漏了一樣,雨水出奇的多.結 ...

人老頭髮才變白?這些因素同樣會白頭,甚至預示著這些疾病

人老頭髮才變白?這些因素同樣會白頭,甚至預示著這些疾病
小林今年23歲,是辦公室裡最小的職員,大家都愛打趣他."小林你怎麼年紀輕輕就少白頭了,煩惱真的有這麼多嗎?"王大姐打趣道. "我也不知道,我是今年開始有的白頭髮,突然就長 ...

嬰幼兒的三種睡姿,會導致頭型變醜,父母要及時幫助改正

嬰幼兒的三種睡姿,會導致頭型變醜,父母要及時幫助改正
作者:奶爸 寶寶的顏值從小開始,尤其在睡覺這點上,不能忽視 導言 寶寶的成長,是父母最關心的地方,不過,老一輩的養育觀念和現在有些出入. 我們經常聽到有一些老人表示,要從小給寶寶睡頭型,調整睡姿的言論 ...

變老,是一種境界

變老,是一種境界
變老的時候,一定要變好, 不再斤斤計較,不再愁眉苦臉, 該放下的放下,該微笑時微笑, 像孩子一樣灑脫, 遠離紛紛擾擾. 變老的時候,一定要變好, 要變到你認為的最好, 就像春來花開, 綻放最美的姿態, ...

杜老師談太極與人生 |​​| 太極拳的變與不變

杜老師談太極與人生 |​​| 太極拳的變與不變
地球每天都在轉動,但是人們從未感知,在我們的意識裡,地球是不動的,學習了地理知識之後,才有了地球運動的認識. 自然界如此,習練太極拳亦如此.學拳之初,就是要我們放棄固有的觀念.比如,平時我們喜歡練力量 ...

美衛星發現陝西發生變化:沙漠變綠洲?網友:正常操作

美衛星發現陝西發生變化:沙漠變綠洲?網友:正常操作
人們常說,地球是人類唯一的家園,但現實卻是:人類似乎對這個家園並不熱愛,身為地球的守護者,卻沒有盡到守護的義務. 人類為了發展,為了進步,完全不顧地球環境,空氣.土壤.河流通通被汙染,地球的淨土已經不 ...

減肥的動力是什麼?瘦了之後整個人確實會變得不一樣

減肥的動力是什麼?瘦了之後整個人確實會變得不一樣
在如今越來越講究身材自由的環境裡,好像很多人也不強求減肥了,什麼樣的身材都是好的都不應該被歧視,但同時,很多人還是挺想自己瘦一點的,因為看了無數例子無不在表明一點,瘦一點,整個人真的可以變得好看很多. ...