Android啟動優化之Rocket學習

2021-08-20 13:40:09 字數 497 閱讀 1597

這個專案star的人不多,但是思路不錯,所以可以像學習preloader框架一樣學習一下這個

冷啟動流程是這樣的

最容易想到的優化是子執行緒,子執行緒和主線程並行執行,並且盡可能多的把**放到子執行緒裡。

但是子執行緒也有一系列弊端:

1.建立執行緒的開銷

2.執行緒上下文切換的開銷

3.子執行緒也佔時間片的啊

所以我們應該合理使用子執行緒,同時又充分利用cpu,延時一部分任務

這個圖給人了很好的cpu的感覺,我們如果可以讓cpu使用的淋漓盡致,那就好了。所以我們需要丈量好每個執行緒執行**所需要的時間使得他們盡量一致(可以用hugo),並且時間片的分配是公平的,個人毛估估把執行緒數量和機器核心數量相等cpu應該會利用的很棒了。然後在所有執行緒都跑完後關閉splash。

其他方面我感覺這個框架設計的很靈巧,但是實用性不高。

android效能優化之啟動優化

解決方案 null null true drawable bg splash必要且耗時 mutidex 必要不耗時 首頁繪製 非必要耗時 資料上報,外掛程式初始化 非必要不耗時 直接去掉,需要時再載入。其他第三方元件的初始化 檢視日誌 將手機連線到android studio上,開啟logcat,不...

Android效能優化之冷啟動優化

冷啟動 cold start 溫啟動 warm start 熱啟動 hot start adb shell am start w packagename packagename.activity 例如 adb shell am start w com.dateyou.test com.datayou...

Android啟動優化

android的啟動分冷啟動 熱啟動 溫啟動。1 冷啟動 當啟動應用時,後台沒有這個應用的程序,需建立新的程序。冷啟動過程 3 溫啟動 應用程序還在,可能因為系統記憶體不足,activity被 需要初始化activity。啟動時間測量的方法有兩種 1 adb 命令 特點 方便操作 adb shell...