APK啟動過程概述

2021-07-16 10:26:28 字數 1005 閱讀 7826

apk啟動過程概述

其流程如下:

二.當apk的各種初始化好後,ams會發生乙個啟動預設activity的訊息給activitythread,接著activitythread就開始建立activity,因為activity的作用是於使用者互動,所以每個activity都有乙個對應的window,這裡window的實現類是phonewindow。所以activity隨後會建立乙個phonewindow物件,繼而在建立decorview,decorview是顯示在螢幕的頂級view,其裡面的乙個id為content的view就是我們平時呼叫setcontentview()設定布局的地方。decorview建立好後就是進行view的初始化,即按繼承樹順序依次建立viewgroup和view。

當這一切都建立好後,就會通知windowmanager來顯示到螢幕上,wm接受到訊息後就會為該介面建立對應的 windowroot和w物件,其中windowroot的作用是把顯示訊息告訴wms,完成顯示功能,而w的作用是接受wms的訊息返回給apk。

其流程如下:(activity的啟動流程看另外再詳細解析)

三.當apk啟動後activity也顯示到螢幕上了,接下來的事就是於使用者互動了。系統有乙個執行緒稱為keyq,它會不斷地讀取使用者在螢幕上的觸控訊息,然後儲存在訊息佇列queueevent裡。系統同時也有乙個執行緒叫inputdispatcherthread,它會從queueevent裡取出訊息,然後呼叫wms的訊息處理函式,wms會根據該訊息所屬的window,通過w類吧訊息傳送給該window,再傳送到對應的activity,接下來就是訊息分發機制的內容了。

其流程如下:

linux系統啟動過程概述

注 以下是對centos6中執行 man boot 的大致描述 翻譯水平有限,多多包涵 其它分支或許稍有不同。linux系統啟動過程大致可分以下五個步驟 1 硬體啟動。2 系統引導。3 啟動核心。4 執行init程序。5 呼叫啟動指令碼。現在就讓咱們一起來追尋一下這個過程吧!一 硬體啟動 注 沒討論...

0 0 Windows啟動過程概述

1.x86和x64引導過程中所涉及的元件 1 mbr 讀入和載入分割槽的引導扇區 2 引導扇區 讀入根目錄,以載入ntldr 3 ntldr 讀入boot.ini,提示引導選單,載入ntoskrnl.exe,bootvid.dll,hall.dll和引導啟動的 裝置驅動程式.如果引導的是乙個32位系...

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 主要用於多...