伊谢尔伦2017-04-17 17:36:16
主要是對程式和系統間的關係進行梳理,讓程式適應更新後的系統,可能會對程式的在系統中的配置資料進行更新;可能清除、更新程式的編譯快取;可能對系統的新功能為程序做記錄……總之事情是很多的,根據每次更新的不同又各不一樣。
舉個簡單的例子,如果某次系統增加或優化了一個對其喚醒的功能,這時就需要重新計算每個程式是否含有喚醒廣播接收器,喚醒的時間是怎樣,記錄這些資訊為對齊喚醒這個功能服務。
PHP中文网2017-04-17 17:36:16
先回答樓主的問題,更新系統後的最佳化是在將系統中所有的apk中的dex檔案轉換為odex檔案。
為何要做這個操作,這裡要說下Dalvik和ART。在Android4.4之前,我們都是用Dalvik,它是解釋執行的,而在Android 4.4 之後,google 引入了ART運行環境,而且在5.0之後全面轉向ART,它採用的是預先編譯的機制,將dex檔案預先轉換為odex文件,預編譯字節碼到機器語言,從而讓應用程式執行將更有效率,啟動更快。