android 提高App啓動速度

公司的App啓動速度太慢了要求提高啓動速度,

於是動手研究下

把啓動速度從2000ms降低到800ms左右。

先記錄下提速的方法

  1. application的Oncreate方法裏面的邏輯代碼全用

    new Handler().post(new Runnable());包裹

  2. Activity的Oncreate()方法如此;

這種方法會把代碼執行的時序全拖到onResumer之後

3,然後在Oncreate onresume 方法 一切你認爲會阻礙到啓動速度的方法和代碼加上log打印信息

看圖

wKioL1S_RTKgcWS1AAFPZs3lbvk220.jpg


看點擊的activitymanager 他會打印時間,只要看下打印時間之前的log打印了哪些信息

然後判斷這些打印信息的代碼是否會阻礙到app的啓動速度

如果會的話就把這些代碼全部new Handler.post掉,或者new Thread 掉。但是順序也會有先後,

打印下log慢慢體會。


我的app在啓動的時候會掃描數據庫,但是newHandler new Thread 後發現還是在 啓動時間之前就已經運行了,這證明啓動的時候會去掃描數據庫,時間慢了100ms。於是用new Handler.postDaley();延長90ms運行,發現可以把這個掃描的模塊拖到打印時間之後運行,app啓動後視圖出來了纔開始掃描數據庫,速度又提高了100ms

達到了800ms左右。


4. 另外還要注意佈局的深度,儘量簡化佈局。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章