Application對象初始化過程

 

Application對象創建過程:

 在ActivityThread做handleBindApplication裏面做的applicaiton對象初始化:   

初始化Application的context,創建對應的Application對象,並執行Application它的onCreate方法。

具體流程如下:

        通過ApkLoader的makeApplication方法,makeApplication方法通過ContextImpl的crateAppContext方法創建了Application的ContextImpl對象。

         通過ActivityThread的Instrumentation對象的newApplication方法創建了Application對象。newApplication方法通過AppComponentFactory的instantiateApplication方法實例化Application對象,完成後返回。

        在Instrumentation對象的newApplication方法裏面做了Application的attach方法,此方法主要初始化裝飾者的ContextImpl對象。

       通過Instrumentation執行Application的onCreate方法

時序圖:

 

 

 

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