Linux內核啟動init進程,init進程中會啟動Zygote進程及ContextManager進程项阴,Zygote進程中會啟動SystemServer進程,ServiceServer進程中會創(chuàng)建ActivityManagerService服務并啟動該服務柳击,AMS服務會被注冊到ContextManager進程中的服務列表中橄杨,這樣它才可以對外提供服務。當有Activity啟動的請求發(fā)出時素挽,系統(tǒng)會向ContextManager檢索出AMS并調用AMS的startActivity()方法蔑赘,通過一系列的準備操作后,調用getProcessRecordLocked()方法檢索目標進程是否存在预明,不存在則調用Process.start()方法來創(chuàng)建目標進程缩赛,將ActivityThread類加載到進程中,而后調用ActivityThread類的main()方法撰糠。在main()方法中創(chuàng)建ActivityThread類型對象at酥馍,創(chuàng)建過程中會以new的方式創(chuàng)建ApplicationThread類型對象mAppThread,at創(chuàng)建完成后調用at.attach()方法菱涤,該方法中獲取AMS對象mgr甜无,接著調用mgr.attachApplication(mAppThread),該方法又調用mAppThread.secheduleLaunchActivity()方法津辩,通過向Handler發(fā)送消息方式切換到主線程中調用at.handLaunchActivity()方法砚尽,該方法中調用performLaunchActivity()方法施无,這個方法中會通過類加載的方式創(chuàng)建Activity對象并調用onCreate()方法。
Activity啟動摘要
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
- 文/潘曉璐 我一進店門狮含,熙熙樓的掌柜王于貴愁眉苦臉地迎上來顽悼,“玉大人,你說我怎么就攤上這事几迄∥盗” “怎么了?”我有些...
- 文/不壞的土叔 我叫張陵映胁,是天一觀的道長木羹。 經常有香客問我,道長解孙,這世上最難降的妖魔是什么坑填? 我笑而不...
- 正文 為了忘掉前任,我火速辦了婚禮弛姜,結果婚禮上脐瑰,老公的妹妹穿的比我還像新娘。我一直安慰自己廷臼,他們只是感情好苍在,可當我...
- 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著荠商,像睡著了一般寂恬。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上莱没,一...
- 文/蒼蘭香墨 我猛地睜開眼躬翁,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了盯拱?” 一聲冷哼從身側響起盒发,我...
- 正文 年R本政府宣布莺丑,位于F島的核電站著蟹,受9級特大地震影響,放射性物質發(fā)生泄漏梢莽。R本人自食惡果不足惜萧豆,卻給世界環(huán)境...
- 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望昏名。 院中可真熱鬧涮雷,春花似錦、人聲如沸葡粒。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽嗽交。三九已至,卻和暖如春颂斜,著一層夾襖步出監(jiān)牢的瞬間夫壁,已是汗流浹背。 一陣腳步聲響...
推薦閱讀更多精彩內容
- 我們每一位做家長的秕硝,大都希望孩子能在學校好好學習,回家后也是竭盡全力幫助孩子在學習上取得好成績洲尊。 不少家長親自上陣...
- Activity的工作原理-android9.0 startActivityForResult 方法當開啟一個頁面...
- 本文中的部分內容分析的是舊版本的代碼远豺,與Android 9.0有所出入,所以寫了一篇完整的9.0應用啟動流程分析坞嘀,...