Android app啟動時間測試

對于app的性能測試缝左,啟動時間是個重要指標玻侥,啟動時間分為兩種情況,一種是冷啟動時間(通常是系統(tǒng)重啟,即在啟動前沒有該app進程的情況)浦徊,另一種是熱啟動,即app從被切換到前臺(點back退出后再點擊圖標啟動)翠订。


從Android4.4(API 19)開始硼一,可以從logcat獲取activity的啟動信息,如下我用應用寶做實驗,可以看到如下的輸出鞍匾,從這里我們可以看到應用的這個activity啟動用了639ms交洗。

12-13 00:10:41.331 855-957/? I/ActivityManager: [AppLaunch] Displayed Displayed com.tencent.android.qqdownloader/com.tencent.assistantv2.activity.MainActivity: +639ms (total +751ms)
12-13 00:10:41.331 855-957/? D/ActivityManager: AP_PROF:AppLaunch_LaunchTime:com.tencent.android.qqdownloader/com.tencent.assistantv2.activity.MainActivity:639:50307447

這個log信息會在activity首次被繪制時輸出,也就是如果activity棧里有這個activity橡淑,再啟動不會輸出該信息构拳,典型的場景是通過recent task列表切換到其他activity再立即切換回來時。

log中的時間包括系統(tǒng)從開始處理啟動activity的時間到完成運行l(wèi)ayout和draw函數(shù)的時間梳码,不包括點擊icon到系統(tǒng)接收到消息的時間隐圾。顯然,這個時間也不包括啟動中異步UI繪制的時間掰茶。但是我們在測試中關注的其實是用戶體驗的啟動時間暇藏,那么上面log中的時間就不能滿足我們的需求了。

不過還好濒蒋,既然是用戶體驗我們可以用更直觀的方式盐碱,使用screenrecord進行屏幕錄制然后分析視頻。使用如下命令錄制視頻沪伙。

adb shell screenrecord --bugreport /sdcard/launch.mp4

--bugreport參數(shù)會使視頻輸出一些時間信息和幀信息便于我們分析啟動時間瓮顽。
activity啟動后,使用ctrl+c結(jié)束視頻錄制围橡,使用

adb shell pull /sdcard/launch.mp4 /Users/xxx/Downloads/launch.mp4

導出視頻到電腦暖混,使用可以按幀播放的視頻軟件打開(mac上quicktime就可以,win下可以用kmplayer)翁授,并按幀播放拣播。

按幀播放視頻,視頻左上角會顯示每一幀的時間(精確到ms)和幀數(shù)收擦。在視頻中會看到icon會變暗然后高亮贮配,高亮時就是系統(tǒng)開始處理本次icon點擊事件了∪福可以把這里作為點擊時間泪勒,然后根據(jù)體驗要求,看到app啟動頁完全繪制完作為終止時間宴猾,這個時間減去點擊時間就是app的啟動時間圆存。


在進行app啟動時間測試時,系統(tǒng)中運行的其他app會對啟動時間有干擾仇哆,如果需要進行版本對比及競品對比辽剧,最好要盡量保持環(huán)境一致,并反復執(zhí)行多次取平均值税产。最后怕轿,不要忘了分別測試冷啟動和熱啟動哦~


本文翻譯偷崩、整理自http://graphics-geek.blogspot.com/2015/10/measuring-activity-startup-time.html?m=1

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市撞羽,隨后出現(xiàn)的幾起案子阐斜,更是在濱河造成了極大的恐慌,老刑警劉巖诀紊,帶你破解...
    沈念sama閱讀 217,826評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件谒出,死亡現(xiàn)場離奇詭異,居然都是意外死亡邻奠,警方通過查閱死者的電腦和手機笤喳,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,968評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來碌宴,“玉大人杀狡,你說我怎么就攤上這事》×停” “怎么了呜象?”我有些...
    開封第一講書人閱讀 164,234評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長碑隆。 經(jīng)常有香客問我恭陡,道長,這世上最難降的妖魔是什么上煤? 我笑而不...
    開封第一講書人閱讀 58,562評論 1 293
  • 正文 為了忘掉前任休玩,我火速辦了婚禮,結(jié)果婚禮上劫狠,老公的妹妹穿的比我還像新娘拴疤。我一直安慰自己,他們只是感情好嘉熊,可當我...
    茶點故事閱讀 67,611評論 6 392
  • 文/花漫 我一把揭開白布遥赚。 她就那樣靜靜地躺著扬舒,像睡著了一般阐肤。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上讲坎,一...
    開封第一講書人閱讀 51,482評論 1 302
  • 那天孕惜,我揣著相機與錄音,去河邊找鬼晨炕。 笑死衫画,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的瓮栗。 我是一名探鬼主播削罩,決...
    沈念sama閱讀 40,271評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼瞄勾,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了弥激?” 一聲冷哼從身側(cè)響起进陡,我...
    開封第一講書人閱讀 39,166評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎微服,沒想到半個月后趾疚,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,608評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡以蕴,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,814評論 3 336
  • 正文 我和宋清朗相戀三年糙麦,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片丛肮。...
    茶點故事閱讀 39,926評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡赡磅,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出腾供,到底是詐尸還是另有隱情仆邓,我是刑警寧澤,帶...
    沈念sama閱讀 35,644評論 5 346
  • 正文 年R本政府宣布伴鳖,位于F島的核電站节值,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏榜聂。R本人自食惡果不足惜搞疗,卻給世界環(huán)境...
    茶點故事閱讀 41,249評論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望须肆。 院中可真熱鬧匿乃,春花似錦、人聲如沸豌汇。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,866評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽拒贱。三九已至宛徊,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間逻澳,已是汗流浹背闸天。 一陣腳步聲響...
    開封第一講書人閱讀 32,991評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留斜做,地道東北人苞氮。 一個月前我還...
    沈念sama閱讀 48,063評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像瓤逼,于是被迫代替她去往敵國和親笼吟。 傳聞我的和親對象是個殘疾皇子库物,可洞房花燭夜當晚...
    茶點故事閱讀 44,871評論 2 354

推薦閱讀更多精彩內(nèi)容