成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

移動端性能優(yōu)化系列—啟動速度

網(wǎng)絡
移動端性能對用戶體驗、留存有著至關重要的影響,作為開發(fā)者是不是被這樣吐槽過,“這個 APP 怎么這么大?”、“怎么一直在 APP 封面圖轉悠,點不進去”、“進入詳情效果有些卡”、“用 4G 使用你們的 APP,我的流量有點不夠啊”等等,這些問題都直觀反映。

移動端性能對用戶體驗、留存有著至關重要的影響,作為開發(fā)者是不是被這樣吐槽過,“這個 APP 怎么這么大?”、“怎么一直在 APP 封面圖轉悠,點不進去”、“進入詳情效果有些卡”、“用 4G 使用你們的 APP,我的流量有點不夠啊”等等,這些問題都直觀反映出,一個體驗良好的應用,只有功能健全還不夠,以下是我在性能優(yōu)化上總結的幾點:

啟動速度優(yōu)化
流暢度優(yōu)化
資源優(yōu)化
內(nèi)存優(yōu)化
APK體積優(yōu)化

今天先聊聊,啟動速度的那些事

應用啟動流程

冷啟動

從點擊應用圖標到UI界面完全顯示且用戶可操作的全部過程。

特點:耗時最多,衡量標準

啟動流程:Click Event -> IPC -> Process.start -> ActivityThread -> bindApplication -> LifeCycle -> ViewRootImpl

熱啟動

因為會從已有的應用進程啟動,所以不會再創(chuàng)建和初始化Application,只會重新創(chuàng)建并初始化Activity。

特點:耗時較少

啟動流程:LifeCycle -> ViewRootImpl

因此判斷應用啟動速度的的標準是冷啟動的速度,即殺掉應用后重新啟動的速度,此項主要是和你的競品對比。

不應在 Application 以及 Activity 的生命周期回調中做任何費時操作,具體指標大概是你在 onCreate,onResume,onStart 等回調中所花費的總時間最好不要超過 400ms,否則用戶在桌面點擊你的應用圖標后,將感覺到明顯的卡頓。

冷啟動分析及優(yōu)化方向

冷啟動涉及的相關任務

冷啟動之前

首先,會啟動 App

然后,加載空白 Window

最后,創(chuàng)建進程

需要注意的是,這些都是系統(tǒng)的行為,一般情況下我們是無法直接干預的。

隨后任務

首先,創(chuàng)建 Application

啟動主線程

創(chuàng)建 MainActivity

加載布局

布置屏幕

首幀繪制

通常到了界面首幀繪制完成后,我們就可以認為啟動已經(jīng)結束了。

下面是官方文檔中的啟動過程流程圖,顯示系統(tǒng)進程和應用進程之間如何交接工作。實際上對啟動流程的簡要概括。

優(yōu)化方向

我們的優(yōu)化方向就是 Application 和 Activity 的生命周期這個階段,啟動中的系統(tǒng)任務我們無法干預,能干預的就是在創(chuàng)建應用和創(chuàng)建 Activity 的過程中可能會出現(xiàn)的性能問題。這一過程具體就是:

Application 的 attachBaseContext

Application 的 onCreate

activity 的 onCreate

activity 的 onStart

activity 的 onResume

activity 的 onResume 方法完成后才開始首幀的繪制。所以這些方法中的耗時操作我們是要極力避免的。 并且,通常情況下,一個應用的主頁的數(shù)據(jù)是需要進行網(wǎng)絡請求的,那么用戶啟動應用是希望快速進入主頁以及看到主頁數(shù)據(jù),這也是我們計算啟動結束時間的一個依據(jù)。

U-APM 在啟動優(yōu)化上的應用

以前使用友盟統(tǒng)計來分析 App 日活、埋點等數(shù)據(jù),發(fā)現(xiàn)友盟推出的 U-APM ,趕緊來嘗嘗鮮。

U-APM 是友盟+推出的 App 穩(wěn)定性監(jiān)控、性能監(jiān)控和云真機測試平臺。通過輕量級的集成接入即可擁有實時、可靠、全面的應用崩潰、ANR、自定義異常等捕獲能力,及卡頓、啟動分析等性能能力,支持多場景、多通道智能告警監(jiān)控,幫助開發(fā)者高效還原異常、卡頓用戶的訪問路徑和業(yè)務現(xiàn)場,縮短故障排查時間。就啟動分析這項能力來看看,U-APM 都做了什么。

U-APM 支持啟動趨勢分析、慢啟動分析、啟動崩潰分析。

啟動趨勢分析

啟動趨勢較為直觀的展示應用啟動耗時的平均值、分位值、區(qū)間分布等數(shù)據(jù),以及啟動階段的性能分解數(shù)據(jù),也能分析出,多版本迭代后,啟動時間的分布狀況。

慢啟動分析

慢啟動分析,有助于開發(fā)者追根溯源,該功能展示慢啟動情況的占比以及慢啟動設備列表,您可以在啟動設置中自定義慢啟動的劃分,默認首次啟動/冷啟動超過3秒為慢啟動,熱啟動超過1秒為慢啟動。

冷啟動階段的慢啟動分析,直觀表現(xiàn)出慢啟動比例以及慢啟動平均耗時。

慢啟動分布,直觀表現(xiàn)出,慢啟動分布的設備、系統(tǒng)、運營商、版本、渠道、地域。

啟動崩潰分析

歸納啟動階段中出現(xiàn)的崩潰信息,支持劃分首次啟動、冷啟動、熱啟動狀態(tài)下的崩潰,默認啟動耗時上限為8秒,超出時間的崩潰不被劃分至啟動崩潰。

啟動崩潰分析

歸納啟動階段中出現(xiàn)的崩潰信息,支持劃分首次啟動、冷啟動、熱啟動狀態(tài)下的崩潰,默認啟動耗時上限為8秒,超出時間的崩潰不被劃分至啟動崩潰。

 

這對減少應用啟動時間,提供了巨大幫助,官方已提供Demo

總結

移動端性能優(yōu)化環(huán)環(huán)相扣,啟動時間優(yōu)化也是較為重要的一個環(huán)節(jié),U-APM 的出現(xiàn),無疑是開發(fā)者的福利,幫助開發(fā)者及早發(fā)現(xiàn)問題,解決問題,至于 U-APM 其他功能,可以登錄 官方網(wǎng)站 去體驗。

 

責任編輯:梁菲 來源: 阿里云云棲號
相關推薦

2022-03-29 13:27:22

Android優(yōu)化APP

2019-03-15 15:00:49

Webpack構建速度前端

2025-02-19 13:00:00

移動端觸摸事件響應速度JavaScrip

2013-12-17 16:21:17

iOSiOS性能優(yōu)化

2021-07-12 23:43:46

AppAndroid優(yōu)化

2009-07-10 09:03:27

Myeclise 7.優(yōu)化

2009-09-04 11:34:31

NetBeans優(yōu)化

2019-07-25 13:22:43

AndroidAPK文件優(yōu)化

2015-12-16 12:40:32

H5緩存機制移動

2015-05-30 10:04:24

線下公開課51CTO沙龍MDSA

2019-12-13 10:25:08

Android性能優(yōu)化啟動優(yōu)化

2021-08-17 10:31:57

Java JakartaEE Spring

2018-09-29 15:59:18

APPiOS優(yōu)化

2012-05-23 23:36:09

Google

2021-11-09 09:57:46

Webpack 前端分包優(yōu)化

2024-12-03 11:12:47

2022-07-19 16:47:53

Android抖音

2023-12-06 08:30:02

Spring項目

2013-08-29 10:50:48

移動網(wǎng)站性能優(yōu)化移動web

2017-09-08 16:45:14

移動
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品揄拍一区二区 | www.国产 | 国产一级在线 | 日本精品视频在线观看 | 一区二区久久电影 | 美女视频网站久久 | 国产99久久精品一区二区永久免费 | 日本激情视频网 | 日韩av免费在线观看 | 99精品视频在线观看免费播放 | 91影院在线观看 | heyzo在线| 日本一区二区高清不卡 | 午夜电影在线播放 | 狠狠躁天天躁夜夜躁婷婷老牛影视 | 成人福利在线 | 国产精品久久av | 懂色一区二区三区免费观看 | 精品久久香蕉国产线看观看亚洲 | 国产精品免费观看 | 欧美精品欧美精品系列 | 午夜av免费 | 九九综合| 欧美激情国产精品 | 国产精品一区二区在线观看 | 欧美一区二区三区视频在线播放 | 免费看一区二区三区 | 中文在线a在线 | www国产亚洲精品久久网站 | 四虎海外| 久久久久久综合 | 精品久久久久久久久久 | 99久久婷婷国产综合精品 | 91精品国产综合久久婷婷香蕉 | 二区在线视频 | 在线观看日韩av | 国产传媒在线观看 | 久久久久一区二区三区 | 激情av在线 | 日韩成人在线看 | 国产精品自在线 |