APP啟動過程

2021-08-02 21:29:07 字數 521 閱讀 5091

activitymanagerservice組織回退棧時以activityrecord為基本單位,所有的activityrecord放在同乙個arraylist裡,可以將mhistory看作乙個棧物件,索引0所指的物件位於棧底,索引mhistory.size()-1所指的物件位於棧頂

zygote程序孵化出新的應用程序後,會執行activitythread類的main方法.在該方法裡會先準備好looper和訊息佇列,然後呼叫attach方法將應用程序繫結到activitymanagerservice,然後進入loop迴圈,不斷地讀取訊息佇列裡的訊息,並分發訊息。

activitythread的main方法執行後,應用程序接下來通知activitymanagerservice應用程序已啟動,activitymanagerservice儲存應用程序的乙個**物件,這樣activitymanagerservice可以通過這個**物件控制應用程序,然後activitymanagerservice通知應用程序建立入口activity的例項,並執行它的生命週期方法

app啟動過程

apk程式的執行過程 首先,activitythread從static main 函式開始,呼叫preparemainlooper 為ui執行緒建立乙個訊息對列 messagequeue binder負責接遠端ams的ipc呼叫,收到訊息後,通過handler將訊息傳送到訊息佇列,ui主線程會非同步...

應用程式App的啟動過程

有storyboard情況下 1.執行 main 函式 3.開啟乙個主執行迴圈,保證應用程式不會退出 4.根據 info.plist 獲得 main.storyboard 的檔名,載入 main.storyboard 有storyboard的情況 建立uiwindow 建立和設定uiwindow 的...

mysql啟動過程長 mysql啟動過程

mysql啟動過程經過以下順序 1.mysql讀取配置檔案的順序 讀取順序 etc my.cnf etc mysql my.cnf usr etc my.cnf my.cnf 2.mysql啟動方式 mysql啟動方式有三種 mysqld mysqld safe mysqld multi 主要用於多...